стратегії тестування
Тема 9. Стратегії тестування
Різниця завдань і цілей тестування протягом життєвого циклу продукту призводить до необхідності розробляти і реалізовувати різні стратегії тестування. Кожна така стратегія визначає:
- ітерації, на яких використовуються стратегія тестування і цілі тестування на кожній ітерації;
- стадії тестування для кожної ітерації;
- критерій успішного завершення тестування;
- типи використовуваних тестів;
- набір методів і інструментальних засобів, необхідних для проведення тестування і оцінки якості;
- критерії оцінки тестів.
Стратегії тестування повинні розроблятися на етапі планування тестування.
Тестування «білого ящика» і «чорного ящика»
У термінології професіоналів тестування, фрази «тестування білого ящика» і «тестування чорного ящика» ставляться до того, чи має розробник тестів доступ до вихідного коду тестованого ПО, або ж тестування виконується через інтерфейс або прикладний програмний інтерфейс, наданий тестованим модулем.
При тестуванні білого ящика (англ. White-box testing, також говорять - прозорого ящика), розробник тесту має доступ до вихідного коду програм (див. Відкрите програмне забезпечення) і може писати код, який пов'язаний з бібліотеками тестованого ПО. Це типово для юніт-тестування (англ. Unit testing), при якому тестуються лише окремі частини системи. Воно забезпечує те, що компоненти конструкції - працездатні і стійкі, до певної міри. При тестуванні білого ящика використовуються метрики покриття коду.
При тестуванні чорного ящика. тестувальник має доступ до ПЗ тільки через ті ж інтерфейси (наприклад, при інтеграції додатків), що і замовник або користувач, або через зовнішні інтерфейси, що дозволяють іншого комп'ютера або іншому процесу підключитися до системи для тестування. Наприклад, тестує модуль може віртуально натискати клавіші або кнопки миші в тестованої програмі за допомогою механізму взаємодії процесів, з упевненістю в тому, чи всі йде правильно, що ці події викликають той же відгук, що й реальні натискання клавіш і кнопок миші. Як правило, тестування чорного ящика ведеться з використанням специфікацій або інших документів, що описують вимоги до системи. Як правило, в даному виді тестування критерій покриття складається з покриття структури вхідних даних, покриття вимог і покриття моделі (в тестуванні на основі моделей).
При тестуванні сірого ящика розробник тесту має доступ до вихідного коду, але при безпосередньому виконанні тестів доступ до коду, як правило, не потрібно.