- •Розділ 1 структурне тестування програмного забезпечення
- •Тема 1.1 Класифікація принципів тестування програмного забезпечення
- •1. Структурні критерії (клас і)
- •2. Функціональні критерії (клас II)
- •3. Стохастичні критерії (клас III)
- •4. Мутаційний критерій (клас IV)
- •Тема 1.2 Переваги та недоліки принципів тестування
- •Тема 1.3 Кроки способу тестування базового шляху
- •Тема 1.4 Спосіб тестування потоків даних
- •Тема 1.5 Тестування вкладених циклів
- •Розділ 2 функціональне тестування програмного забезпечення
- •Тема 2.1 Спосіб тестування діаграм причин-наслідків
- •Тема 2.2 Тестування елементів
- •Тема 2.3 Переваги та недоліки низхідного та висхідного тестування
- •Тема 2.4 Стресове тестування та тестування виробності
- •Тема 2.5 Переваги та недоліки різних методів відлагодження
Тема 1.2 Переваги та недоліки принципів тестування
Завдання: законспектувати тему до зошита у вигляді відповідей на контрольні запитання, що містяться в кінці теми.
Недоліки тестування «білого ящика»:
1. Кількість незалежних маршрутів може бути дуже велика. Наприклад, якщо цикл у програмі виконується k раз, а всередині циклу є n розгалужень, то кількість маршрутів обчислюється по формулі
.
При n= 5 і k = 20 кількість маршрутів m = 1014. Приймемо, що на розробку, виконання й оцінку тесту по одному маршруті витрачається 1 мс. Тоді при роботі 24 години на добу 365 днів у році на тестування піде 3170 років.
2.Вичерпне тестування маршрутів не гарантує відповідності програми вихідним вимогам до неї.
3. У програмі можуть бути пропущені деякі маршрути.
4. Не можна виявити помилки, поява яких залежить від оброблюваних даних (це помилки, обумовлені вираженнями типу if abs (a-b) < eps..., if(a+b+c)/3=a...).
Достоїнства тестування «білого ящика»
Вони пов'язані з тим, що принцип «білого ящика» дозволяє врахувати особливості програмних помилок:
1. Кількість помилок мінімальна в «центрі» і максимальна на «периферії» програми.
2.Попередні припущення про ймовірності потоку керування або даних у програмі часто бувають некоректні. У результаті типовим може стати маршрут, модель обчислень по якому пророблена слабко.
3. При запису алгоритму ПЗ у вигляді тексту мовою програмування можливе внесення типових помилок трансляції (синтаксичних і семантичних).
4. Деякі результати в програмі залежать не від вихідних даних, а від внутрішніх станів програми.
Кожна із цих причин є аргументом для проведення тестування за принципом «білого ящика». Тести «чорного ящика» не зможуть реагувати на помилки таких типів.
Принцип «чорного ящика» не альтернативний принципу «білого ящика». Скоріше це підхід, що доповнює, що виявляє інший клас помилок.
Тестування «чорного ящика» забезпечує пошук наступних категорій помилок:
1) некоректних або відсутніх функцій;
2) помилок інтерфейсу;
3) помилок у зовнішніх структурах даних або в доступі до зовнішньої бази даних;
4) помилок характеристик (необхідна ємність пам'яті й т.д.);
5) помилок ініціалізації й завершення.
Подібні категорії помилок способами «білого ящика» не виявляються.
На відміну від тестування «білого ящика», що виконується на ранній стадії процесу тестування, тестування «чорного ящика» застосовують на пізніх стадіях тестування. При тестуванні «чорного ящика» зневажають керуючою структурою програми. Тут увага концентрується на інформаційній області визначення програмної системи.
Техніка «чорного ящика» орієнтована на рішення наступних завдань:
1)скорочення необхідної кількості тестових варіантів (через перевірку не статичних, а динамічних аспектів системи);
2) виявлення класів помилок, а не окремих помилок.
Контрольні запитання:
Що відноситься до недоліків методів „білого ящика”?
Які характеристики відносяться до достоїнств „білого ящика”?
Які категорії помилок знаходять методами „чорного ящика”?
Які завдання вирішуються методами „чорного ящика”?