configuration testing tutorial with examples
Вступ до тестування конфігурації програмного забезпечення:
Ця стаття була запропонована вам для обговорення спеціального типу тестування програмного забезпечення, що є дуже важливим для бізнесу.
Ми обговоримо основи тестування конфігурації, її потребу, важливість, цілі та типи. По мірі подальшого прогресу в статті ми детально дізнаємося, як проводити це тестування.
як прошити BIOS Windows 10 -
Почнемо !!
Цей підручник дасть вам повний огляд тестування конфігурації, і він стане чудовим посібником для тих, хто не знайомий із цією концепцією тестування, та вдосконалить знання тих, хто вже має досвід у цьому.
Що ви дізнаєтесь:
- Що таке тестування конфігурації?
- Чому це тестування?
- Підготовка до тесту конфігурації
- Microsoft VSTS - Засіб тестування конфігурації
- Цілі
- Види тестування конфігурації
- Важливість цього тестування для підприємства
- Висновок
- Рекомендована література
Що таке тестування конфігурації?
Тестування конфігурації - це метод тестування системи, що розробляється, на декількох машинах, що мають різні комбінації або конфігурації апаратного та програмного забезпечення. Продуктивність системи або програми перевіряється на основі кожної з підтримуваних конфігурацій обладнання та програмного забезпечення.
Коли ми говоримо про різні конфігурації апаратного та програмного забезпечення, це приписується декільком версіям операційної системи, браузерам, підтримуваним драйверам, обсягам пам'яті, типам жорстких дисків, центральному процесору тощо.
Чому це тестування?
Як обговорювалося вище, це тестування - це методика, яка оцінює продуктивність програмного забезпечення, системи / програми з урахуванням різних конфігурацій системи.
Це тестування проводиться для визначення оптимальних конфігурацій, за яких система або програма може працювати нормально без будь-яких помилок, проблем або недоліків у роботі. Отже, найефективніша конфігурація, яка забезпечить необхідні експлуатаційні характеристики, визначається за допомогою цього тестування.
Другою основною причиною цього тестування є перевірка сумісності системи з іншим програмним забезпеченням чи обладнанням, зазначеним у SRS (специфікація вимог до програмного забезпечення).
Приклад
Давайте розглянемо, що ваше підприємство розробило настільний додаток мовою C #, і це додаток побудовано на платформі .NET.
І ця програма базується на 3-рівневій архітектурі, яка має три шари - інтерфейс (клієнт), рівень додатків (сервер) і рівень бази даних. Кожен із шарів підтримуватиме певні платформи відповідно.
Припустимо, що кожен шар підтримує такі платформи:
Клієнт - ОС Windows 10, Windows 7, Windows XP, ОС Linux.
Сервер - Сервер Ubuntu, Windows Server 2016 , Сервер Novell Open Enterprise .
База даних - Microsoft SQL Server, IBM DB2, MySQL.
Тепер, як тестувальник програмного забезпечення, вам доведеться протестувати додаток за кожною з різних комбінацій вищезазначених платформ клієнта, сервера та бази даних, щоб забезпечити належну роботу програми з кожною з можливих конфігурацій.
Наприклад , Ви перевірите, як програма працює з комбінацією ОС Windows 10, базою даних Windows Server 2016 і MySQL, а потім проведете ще один тест, щоб перевірити, як програма працює з комбінацією ОС Windows 10, Windows Server 2016 та бази даних IBM DB2.
І так до тих пір, поки ви не перевірите всі можливі конфігурації.
Наше тестування буде обмежене не лише програмним забезпеченням, але воно також охоплюватиме апаратне забезпечення, де нам доведеться перевіряти кожну з комбінацій різних апаратних пристроїв. Тому іноді це тестування також називають Тестуванням конфігурації обладнання.
Підготовка до тесту конфігурації
Це тестування має певні передумови, які необхідно виконати перед тим, як ми виконаємо тести конфігурації.
Нижче наведені передумови:
# 1) Підготовка матриці покриття
Завдяки величезній кількості можливих апаратних і програмних конфігурацій стає дуже трудомістким і практично неможливим тестування кожної з конфігурацій ефективно.
Наприклад , у прикладі, який ми обговорили вище, ми матимемо загалом 3 * 3 * 3, тобто 27 конфігурацій програмного забезпечення. Припустимо, у нас є 5 різних жорстких дисків і 6 різних обсягів пам'яті. Потім підрахунок перейде до 27 * 5 * 9, тобто 810 конфігурацій зараз.
Це буде продовжувати збільшуватися, якщо ми додамо до зображення більше компонентів. Отже, стає надзвичайно важливим зробити планування зусиль для тестування програмного забезпечення та чітко визначити, які платформи будуть підтримуватися.
Потім нам потрібно розробити матрицю покриття, яка буде містити різні комбінації апаратних та програмних конфігурацій. Іноді ця матриця покриття також відома як BCM (Basic Configuration Matrix).
На наведеному малюнку наведено зразок схематичної матриці конфігурацій, які ви хочете протестувати.
# 2) Пріоритетність конфігурацій
Після того, як матриця конфігурації підготовлена, наступним кроком є визначення пріоритетів конфігурацій.
Цей крок необхідний, оскільки неможливо протестувати весь величезний широкий спектр конфігурацій. Отже, на основі відгуків клієнтів, перелічуються найбільш важливі конфігурації, які спочатку мають бути ретельно протестовані.
Після того, як ми закінчимо вищезазначені два кроки, ми можемо продовжувати тестування різних конфігурацій на основі їх пріоритету.
Microsoft VSTS - Засіб тестування конфігурації
Служби Microsoft Visual Studio Team Services (VSTS) - це інструмент, який дуже допомагає у тестуванні програми в різних конфігураціях на основі вашого плану тестування.
Ви повинні мати план тестування, щоб вирішити, які тести ви хочете виконати та на яких конфігураціях. Вам потрібно переконатись, що у вас створено правильне середовище для потрібних вам конфігурацій. Отримавши матрицю комбінацій, вам потрібно її перевірити.
Ви можете виконати наведені нижче дії, щоб виконати це тестування:
# 1) Налаштуйте конфігурації та створіть змінні. Змінна є одним із компонентів у вашій конфігурації.
Наприклад , може бути змінна „Браузер”, яка може мати кілька значень, таких як Chrome, Firefox, IE10 тощо.
# два) Призначте конфігурації планам випробувань / наборам тестів або окремим тестам.
# 3) Виконайте тести для кожної конфігурації.
# 4) Відстежуйте результати тестів для кожної з конфігурацій.
Детальний покроковий посібник для проведення цього тестування за допомогою VSTS можна переглянути тут: VSTS - Перевірте різні конфігурації
Цілі
Нижче наведено різні цілі цього тестування:
- Визначити оптимальну конфігурацію AUT (Застосовується на випробуванні).
- Щоб виявити приховані вразливості, що містяться в апаратному забезпеченні.
- Забезпечити безперервність бізнесу шляхом виявлення та усунення проблем, перш ніж вони заважають комерційній діяльності.
- Для усунення дрейфу конфігурації.
- Щоб мінімізувати кількість збоїв через помилки конфігурації хосту.
- Перевірка програми, щоб переконатися, що вона задовольняє налаштовуваності.
- Для аналізу продуктивності системи шляхом додавання, видалення або модифікації апаратних компонентів ( Наприклад, . Змінюючи обсяги пам'яті, додаючи балансування навантаження тощо).
- Щоб перевірити, чи працює система нормально в географічно розподіленому середовищі (сервери та клієнти розташовані в різних місцях).
- Перевірка того, наскільки легко помилки можна відтворити незалежно від змін конфігурації.
- Щоб перевірити, наскільки простежувані та керовані елементи програми.
Види тестування конфігурації
Ми можемо мати дві різні лінії підрозділів для цього тестування.
На перша лінія , його можна розділити на дві частини:
- Тестування конфігурації програмного забезпечення
- Тестування конфігурації обладнання
На другий рядок , його знову можна розділити на дві частини - 1. Тестування рівня клієнта та 2. Тестування рівня сервера
Для початку давайте подивимось на конфігурацію обладнання та програмного забезпечення.
# 1) Тестування конфігурації програмного забезпечення:
Це тестування проводиться через AUT (додаток, що перевіряється) з декількома версіями ОС, оновленнями програмного забезпечення тощо. Це тривале тестування, яке вимагає величезного часу на встановлення та видалення різного програмного забезпечення, яке буде використовуватися для тестування.
Одним із підходів до економії часу є використання віртуальних машин для тестування конфігурації програмного забезпечення. Віртуальна машина імітує конфігурації в режимі реального часу і надає ті ж відчуття, що і фізична машина.
Отже, замість того, щоб встановлювати та видаляти кілька програм на одній фізичній машині, ми можемо мати кілька віртуальних машин, що імітують кожну різну конфігурацію, на основі якої нам потрібно провести тестування.
Тестування конфігурації програмного забезпечення починається після випуску збірки після проходження модульного тесту та тесту інтеграції.
# 2) Тестування конфігурації обладнання:
Тестування конфігурації апаратного забезпечення зазвичай проводиться в лабораторіях, де ми маємо фізичні машини з різним обладнанням, підключеним до них.
Щоразу, коли випускається збірка, програмне забезпечення має бути встановлене на всіх фізичних машинах, до яких приєднано апаратне забезпечення, а тестовий пакет повинен виконуватися на кожній машині, щоб підтвердити, що програма працює нормально.
Щоб виконати вищезазначене завдання, потрібні значні зусилля, щоб налаштувати програмне забезпечення на кожній машині, підключити до нього апаратне забезпечення, а потім виконати тестові набори вручну. Навіть якщо ми автоматизуємо це завдання і запустимо тестовий пакет, навіть тоді значні зусилля будуть потрібні.
Крім того, як ми вже обговорювали в попередній частині цієї статті, виконуючи перевірку конфігурації апаратного забезпечення, ми прописуємо тип обладнання, що підлягає тестуванню, і існує безліч комп'ютерних апаратних засобів та периферійних пристроїв, через які практично неможливо виконати всі тести.
Отже, тестер аналізує, яке обладнання в основному використовується замовником, а потім проводить тестування на основі встановлення пріоритетів.
Тепер обговоримо тестування рівня клієнта та сервера.
# 1) Тестування рівня клієнта : Він має спільність із тестуванням зручності та функціональності. Це тестування проводиться з точки зору інтересів безпосереднього користувача.
# 2) Тестування рівня сервера : Цей тип тестування проводиться для дослідження взаємодії між програмним забезпеченням та зовнішнім середовищем, коли його планується інтегрувати після випуску.
Важливість цього тестування для підприємства
Це тестування дуже важливо для підприємства, щоб створити та підтримувати високоефективні, масштабовані та доступні програми.
Це тестування слід проводити постійно і бажано автоматизовано (інакше це забирає багато часу, якщо виконується вручну) з метою швидкого виявлення та виправлення факторів, що сприяють неефективності.
11 НАЙКРАЩИХ інструментів управління конфігурацією програмного забезпечення (SCM Tools у 2020 році)
Висновок
Тестування конфігурації настільки ж важливе, як і будь-який інший тип тестування програмного забезпечення, оскільки виявляє оптимальну конфігурацію системи, за якої додаток працює найкраще. Крім того, це допомагає виявити та виправити будь-які проблеми сумісності.
різниця між тестуванням whitebox та blackbox
У цій статті ми дізналися про те, що таке тестування конфігурації, чому ми проводимо це тестування, які його цілі, які його типи, які передумови цього тестування, як це потрібно зробити, наскільки це важливо для підприємства тощо, детально.
Сподіваюся, ця стаття була інформативною і дала б вам чудову ідею про тестування конфігурації.
Рекомендована література
- Найкращі засоби тестування програмного забезпечення 2021 р. (Інструменти автоматизації тестування якості)
- Функціональне тестування проти нефункціонального тестування
- Посібник із парного тестування чи тестування для всіх пар із інструментами та прикладами
- Тестування програмного забезпечення QA Assistant Job
- Підручник з об’ємного тестування: Приклади та інструменти об’ємного тестування
- Підручник з деструктивного контролю та неруйнівного контролю
- Поглиблені підручники Eclipse для початківців
- Що таке тестування на витривалість у тестуванні програмного забезпечення (приклади)