Категорії тестових технік (версія 3.1)
Метою методів тестування є допомога у визначенні умов тестування, тестових кейсів і тестових даних.
Вибір методів тестування залежить від ряду факторів, зокрема:
- Складність компонентів або системи
- Регуляторні стандарти
- Вимоги замовника або контракту
- Рівні та типи ризиків
- Наявна документація
- Знань і навичок тестувальника
- Доступних інструментів
- Часу і бюджету
- Моделі життєвого циклу розробки програмного забезпечення
- Типів дефектів, які очікуються в компоненті чи системі
Деякі техніки більш застосовні до певних ситуацій і рівнів тестування; інші застосовні до всіх рівнів тестування. Створюючи тестові випадки, тестувальники зазвичай використовують комбінацію технік тестування, щоб досягти найкращих результатів тестування.
Використання методів тестування в аналізі тестів, розробці тестів і реалізації тестів може варіюватися від дуже неформального (відсутність документації) до дуже формального. Відповідний рівень формальності залежить від контексту тестування, включаючи зрілість процесів тестування та розробки, часові обмеження, вимоги щодо безпеки чи нормативні вимоги, знання та навички залучених людей і модель життєвого циклу розробки програмного забезпечення, яка використовується.
Методи тестування чорної скриньки (також називають поведінковими методами або техніками, заснованими на поведінці) ґрунтуються на аналізі відповідної тестової бази (наприклад, офіційних документів вимог, специфікацій, випадків використання, історій користувачів або бізнес-процесів). Ці методи застосовуються як для функціонального, так і для нефункціонального тестування. Методи тестування чорної скриньки зосереджуються на входах і виходах об’єкта тестування без посилання на його внутрішню структуру.
Методи тестування білої скриньки (також називаються структурними методами або методами на основі структури) базуються на аналізі архітектури, детального проєктування, внутрішньої структури або коду об’єкта тестування. На відміну від методів тестування чорного ящика, методи тестування білого ящика зосереджуються на структурі та обробці всередині тестового об’єкта.
Методи тестування на основі досвіду використовують досвід розробників, тестувальників і користувачів для розробки, реалізації та виконання тестів. Ці методи часто поєднуються з методами тестування чорної та білої скриньок.
Загальні характеристики методів тестування чорної скриньки включають наступне:
- Умови тестування, тестові кейси та тестові дані отримані з тестової бази, яка може включати вимоги до програмного забезпечення, специфікації, варіанти використання та історії користувачів
- Тестові приклади можуть бути використані для виявлення прогалин між вимогами та виконанням вимог, а також відхилень від вимог
- Покриття вимірюється на основі елементів, протестованих у тестовій базі, і техніки, застосованої до тестової бази
Загальні характеристики методів тестування білого ящика включають:
- Умови тестування, тестові випадки та тестові дані отримуються з тестової бази, яка може включати код, архітектуру програмного забезпечення, детальний дизайн або будь-яке інше джерело інформації щодо структури програмного забезпечення.
- Покриття вимірюється на основі перевірених елементів у обраній структурі (наприклад, коду чи інтерфейсів) і методики, застосованої до тестової бази
Загальні характеристики методів тестування на основі досвіду включають:
- Умови тестування, тестові кейси та тестові дані отримуються з тестової бази, яка може включати знання та досвід тестувальників, розробників, користувачів та інших зацікавлених сторін. Ці знання та досвід включають очікуване використання програмного забезпечення, його середовище, можливі дефекти та поширення цих дефектів
Міжнародний стандарт (ISO/IEC/IEEE 29119-4) містить описи методів тестування та відповідних показників покриття.
Категорії тестових технік (версія 4.0)
Методи тестування допомагають тестувальнику в аналізі тесту (що тестувати) і в дизайні тесту (як тестувати). Методи тестування допомагають систематично розробити відносно невеликий, але достатній набір тестів. Методи тестування також допомагають тестувальнику визначити умови тестування, ідентифікувати елементи покриття та ідентифікувати тестові дані під час аналізу та розробки тесту. Додаткову інформацію щодо методів тестування та відповідних заходів можна знайти в стандарті ISO/IEC/IEEE 29119-4, а також у (Beizer 1990, Craig 2002, Copeland 2004, Koomen 2006, Jorgensen 2014, Ammann 2016, Forgács 2019).
У цьому сілабусі методи тестування класифікуються як «чорної скриньки», «білої скриньки» і засновані на досвіді.
Методи тестування чорної скриньки (також відомі як методики на основі специфікацій) базуються на аналізі заданої поведінки об’єкта тестування без посилання на його внутрішню структуру. Таким чином, тестові випадки не залежать від того, як реалізовано програмне забезпечення. Отже, якщо реалізація змінюється, але необхідна поведінка залишається незмінною, тоді тестові випадки все ще корисні.
Методи тестування білої скриньки (також відомі як методи на основі структури) базуються на аналізі внутрішньої структури тестового об’єкта та обробки. Оскільки тестові кейси залежать від того, як розроблено програмне забезпечення, їх можна створити лише після розробки або впровадження тестового об’єкта.
Методи тестування, засновані на досвіді, ефективно використовують знання та досвід тестувальників для розробки та реалізації тестів. Ефективність цих методів значною мірою залежить від навичок тестувальника. Методи тестування, засновані на досвіді, можуть виявити дефекти, які можна пропустити за допомогою методів тестування чорної та білої скриньок. Таким чином, методи тестування, засновані на досвіді, доповнюють методи тестування чорної та білої скриньок.
В цьому відео починаємо працювати з секцією 4.1.
00:00:54 Категорії тестових технік
00:09:25 Техніки чорної скриньки, білої скриньки, техніки тестування засновані на досвіді