Page 65 - 4592
P. 65
Зазвичай тестування "білого ящика" засноване на аналізі
керуючої структури програми. Програма вважається повністю
перевіреної, якщо проведено вичерпне тестування маршрутів
(шляхів) її графа управління.
У цьому випадку формуються тестові варіанти, в яких:
Гарантується перевірка всіх незалежних маршрутів
програми.
Знаходяться гілки True, False для всіх логічних рішень.
Виконуються всі цикли (в межах їх кордонів і діапазонів).
Аналізується правильність внутрішніх структур даних.
Недоліки тестування "білого ящика":
Кількість незалежних маршрутів може бути дуже велика.
Наприклад, якщо цикл у програмі виконується k раз, а
всередині циклу є n розгалужень, то кількість маршрутів
обчислюється за формулою
14.
При n = 5 і k = 20 кількість маршрутів m = 10 Приймемо,
що на розробку, виконання і оцінку тесту по одному маршруту
витрачається 1 мс. Тоді при роботі 24 години на добу 365 днів у
році на тестування піде 3170 років.
Повне тестування маршрутів не гарантує відповідності
програми вихідним вимогам до неї.
У програмі можуть бути пропущені деякі маршрути.
Не можна виявити помилки, поява яких залежить від даних.
Переваги тестування "білого ящика» пов'язані з тим, що
принцип «білого ящика» дозволяє врахувати особливості
програмних помилок:
Кількість помилок мінімально в «центрі» і максимально на
«периферії» програми.
Попередні припущення про ймовірність потоку керування
або даних у програмі часто бувають некоректними. У
результаті типовим може стати маршрут, модель обчислень
за яким опрацьована слабо.
При записі алгоритму програмного забезпечення у вигляді
тексту на мові програмування можливе внесення типових
помилок трансляції (синтаксичних і семантичних).
Деякі результати в програмі залежать не від вихідних даних,
а від внутрішніх станів програми.
65