Що таке тестування конфігурації? Приклади тестів

Тестування конфігурації

Тестування конфігурації це техніка тестування програмного забезпечення, за якої програмне забезпечення тестується з кількома комбінаціями програмного та апаратного забезпечення, щоб оцінити функціональні вимоги та знайти оптимальні конфігурації, за яких програмне забезпечення працює без будь-яких дефектів або недоліків.

Як обговорювалося вище, тестування конфігурації — це тестування програмного забезпечення, під час якого перевіряється програма, що тестується, використовуючи кілька комбінацій програмного та апаратного забезпечення.

Приклад тестування конфігурації

Давайте зрозуміємо це на прикладі настільної програми:

Як правило, настільні програми будуть 2- або 3-рівневими, тут ми розглянемо 3-рівневу настільну програму, розроблену за допомогою Asp.Net і складається з клієнта, сервера бізнес-логіки та сервера бази даних, де кожен компонент підтримує згадані нижче платформи.

  • Клієнтська платформа – Windows XP, ОС Window7, ОС Windows 8 тощо
  • Серверна платформа – Windows Сервер 2008 R2,Windows Сервер 2008 R2, Windows Сервер 2012R2
  • База даних – SQL Sever 2008, SQL Server 2008R2, SQL Server 2012 тощо.

Тестер має перевірити комбінацію клієнта, сервера та бази даних із комбінаціями вищезазначених платформ і версій бази даних, щоб переконатися, що програма функціонує належним чином і не виходить з ладу.

Тестування конфігурації обмежується не лише програмним забезпеченням, але також застосовується до апаратного забезпечення, тому його також називають тестуванням конфігурації апаратного забезпечення, де ми перевіряємо різні апаратні пристрої, такі як принтери, сканери, веб-камери тощо, які підтримують тестовану програму.

Тестування конфігурації

Передумови для тестування конфігурації

Для будь-якого проекту перед початком тестування конфігурації ми повинні виконати деякі попередні умови

  • Створення матриці, яка складається з різних комбінацій програмних і апаратних конфігурацій
  • Пріоритезація конфігурацій, оскільки важко перевірити всі конфігурації
  • Тестування кожної конфігурації на основі визначення пріоритетів.

Цілі тестування конфігурації

Цілі тестування конфігурації полягають у тому, щоб

  • Перевірка програми, щоб визначити, чи вона відповідає вимогам конфігурації
  • Спричинення збоїв вручну, які допомагають виявити дефекти, які не вдалося знайти під час тестування (наприклад, зміна регіональних налаштувань системи, таких як часовий пояс, мова, формати дати, часу тощо)
  • Визначити оптимальну конфігурацію програми, що тестується.
  • Аналіз продуктивності системи шляхом додавання або модифікації апаратних ресурсів, таких як балансувальники навантаження, збільшення або зменшення розміру пам’яті, підключення різних моделей принтерів тощо.
  • Аналіз ефективності системи на основі визначення пріоритетів, наскільки ефективно тести були виконані з наявними ресурсами для досягнення оптимальної конфігурації системи.
  • Перевірка системи в територіально розподіленому середовищі для перевірки ефективності роботи системи. Для прикладу: сервер в іншому місці, а клієнти в іншому місці, система повинна працювати нормально, незалежно від налаштувань системи.
  • Перевірка того, наскільки легко відтворюються помилки, незалежно від змін конфігурації.
  • Забезпечення можливості відстеження елементів програми шляхом належного документування та підтримки версій, які легко ідентифікувати.
  • Перевірка того, наскільки керованими є елементи програми Життєвий цикл розробки програмного забезпечення.

Як виконати тестування конфігурації

У цьому розділі ми обговоримо стратегію, якої потрібно дотримуватися для типів тестування конфігурації, і існує два типи тестування конфігурації, як зазначено нижче

  • Тестування конфігурації програмного забезпечення
  • Тестування конфігурації обладнання

Тестування конфігурації програмного забезпечення

Тестування конфігурації програмного забезпечення — це тестування програми, що тестується, з кількома ОС, різними оновленнями програмного забезпечення тощо. Тестування конфігурації програмного забезпечення займає дуже багато часу, оскільки потрібен час для встановлення та видалення різного програмного забезпечення, яке використовується для тестування.

Одним із підходів до тестування конфігурації програмного забезпечення є тестування на віртуальних машинах. Віртуальна машина – це середовище, яке встановлюється на програмне забезпечення та діє як фізичне обладнання, і користувачі відчуватимуть те саме відчуття, що й фізична машина. Віртуальні машини імітують конфігурації в реальному часі.

Замість інсталяції та видалення програмного забезпечення на кількох фізичних машинах, що забирає багато часу, завжди краще встановити програмне забезпечення/програмне забезпечення на віртуальній машині та продовжити тестування. Цей процес можна виконати за допомогою кількох віртуальні машини, що спрощує роботу тестувальника

Тестування конфігурації програмного забезпечення зазвичай може розпочатися, коли

  • Вимоги до конфігурації, які необхідно перевірити, визначено
  • Тестове середовище готове
  • Команда тестування добре навчена тестуванню конфігурації
  • Випущена збірка пройшла одиничний і інтеграційний тест

типовий Стратегія тестування який виконується для перевірки тесту конфігурації програмного забезпечення, полягає у запуску набору функціональних тестів для кількох конфігурацій програмного забезпечення, щоб перевірити, чи тестована програма працює належним чином без будь-яких недоліків чи помилок.

Інша стратегія полягає в тому, щоб переконатися, що система працює належним чином, вручну проваливши тестові випадки та перевіривши ефективність.

приклад:

Скажімо, існує банківська програма, яку потрібно перевірити на її сумісність у кількох браузерах, коли програма розміщена в середовищі, де присутні всі передумови, вона може пройти блок і Інтеграційне тестування в випробувальній лабораторії.

Але якщо ту саму програму встановлено на клієнтському місці, а на машинах відсутні деякі оновлення програмного забезпечення або версії, від яких безпосередньо чи опосередковано залежить програма, існує ймовірність того, що програма може вийти з ладу. Щоб уникнути подібної ситуації, завжди пропонується провалити тести вручну, видаливши деякі вимоги конфігурації, а потім продовжити тестування.

Тестування конфігурації

Тестування конфігурації обладнання

Тестування конфігурації апаратного забезпечення зазвичай проводиться в лабораторіях, де ми знаходимо фізичні машини з різним підключеним до них апаратним забезпеченням.

Кожного разу, коли випускається збірка, програмне забезпечення має бути встановлено на всіх фізичних машинах, до яких підключено апаратне забезпечення, і на кожній машині має бути запущено набір тестів, щоб переконатися, що програма працює нормально.

Щоб виконати вищевказане завдання, потрібно докласти значних зусиль, щоб встановити програмне забезпечення на кожній машині, підключити апаратне забезпечення та вручну запустити або навіть автоматизувати вищезгаданий процес і запустити набір тестів.

Крім того, під час тестування конфігурації апаратного забезпечення ми вказуємо тип апаратного забезпечення, яке потрібно перевірити, і є багато комп’ютерного обладнання та периферійних пристроїв, через які їх усі неможливо запустити. Таким чином, обов’язком тестувальника стає проаналізувати, яке апаратне забезпечення найчастіше використовується користувачами, і спробувати провести тестування на основі пріоритетів.

Зразки тестових випадків

Розгляньте банківський сценарій, щоб перевірити апаратну сумісність. Банківську програму, підключену до машини для підрахунку купюр, необхідно протестувати на різних моделях, таких як Rolex, Strob, Maxsell, StoK тощо.

Давайте візьмемо кілька зразків тестів, щоб протестувати машину для підрахунку банкнот

  • Перевірка зв’язку програми з моделлю Rolex, коли попередні умови НЕ встановлено
  • Перевірка зв’язку програми з моделлю Rolex, коли встановлено необхідні умови
  • Перевірте, чи правильно система підраховує банкноти
  • Перевірте, чи система неправильно підраховує банкноти
  • Перевірка підроблених купюр
  • Перевірка часу відповіді
  • Перевірка виявлення фальшивих банкнот тощо

Наведені вище тестові випадки стосуються однієї моделі, і її потрібно протестувати з усіма моделями, доступними на ринку, встановивши їх у тестовій лабораторії, що важко. Отже, доцільно доручити тестування конфігурації апаратного забезпечення організаціям, які спеціалізуються на цьому.

Підсумки

У розробці програмного забезпечення тестуванню конфігурації слід приділяти таке ж значення, як і іншим типам тестування. Без тестування конфігурації важко проаналізувати оптимальну продуктивність системи, а також програмне забезпечення може зіткнутися з проблемами сумісності, на яких воно має працювати.