Формуються тестові варіанти, в яких:
· гарантується перевірка всіх незалежних маршрутів програми;
· проходяться гілки True, False для всіх логічних вирішень;
· виконуються всі цикли (в межах їх меж і діапазонів);
· аналізується правильність внутрішніх структур даних.
Недоліки тестування «білого ящика»:
1. Кількість незалежних маршрутів може бути дуже велика.
2. Вичерпне тестування маршрутів не гарантує відповідності програми початковим вимогам до неї.
3. У програмі можуть бути пропущені деякі маршрути.
4. Не можна виявити помилки, поява яких залежить від оброблюваних даних.
Достоїнства тестування «білого ящика» пов'язані з тим, що принцип «білого ящика» дозволяє врахувати особливості програмних помилок:
1. Кількість помилок мінімальна в «центрі» і максимально на «периферії» програми.
2. Попередні припущення про вірогідність потоку управління або даних в програмі часто бувають некоректні.
3. При записі алгоритму ПЗ у вигляді тексту на мові програмування можливе внесення типових помилок трансляції (синтаксичних і семантичних).
4. Деякі результати в програмі залежать не від початкових даних, а від внутрішніх станів програми.