Page 65 - 4592
P. 65

Зазвичай  тестування  "білого  ящика"  засноване  на  аналізі

               керуючої  структури  програми.  Програма  вважається  повністю
               перевіреної,  якщо  проведено  вичерпне  тестування  маршрутів
               (шляхів) її графа управління.
                      У цьому випадку формуються тестові варіанти, в яких:

                     Гарантується           перевірка        всіх     незалежних          маршрутів
                      програми.
                     Знаходяться гілки True, False для всіх логічних рішень.

                     Виконуються всі цикли (в межах їх кордонів і діапазонів).
                     Аналізується правильність внутрішніх структур даних.
                      Недоліки тестування "білого ящика":

                     Кількість  незалежних  маршрутів  може  бути  дуже  велика.
                      Наприклад,  якщо  цикл  у  програмі  виконується  k  раз,  а
                      всередині  циклу  є  n  розгалужень,  то  кількість  маршрутів

                      обчислюється за формулою
                                                                                       14.
                      При n = 5 і k = 20 кількість маршрутів m = 10   Приймемо,
               що  на розробку,  виконання  і  оцінку  тесту  по  одному  маршруту
               витрачається 1 мс. Тоді при роботі 24 години на добу 365 днів у

               році на тестування піде 3170 років.
                     Повне  тестування  маршрутів  не  гарантує  відповідності
                      програми вихідним вимогам до неї.

                     У програмі можуть бути пропущені деякі маршрути.
                     Не можна виявити помилки, поява яких залежить від даних.
                      Переваги  тестування  "білого  ящика»  пов'язані  з  тим,  що
               принцип  «білого  ящика»  дозволяє  врахувати  особливості

               програмних помилок:
                     Кількість помилок мінімально в «центрі» і максимально на
                      «периферії» програми.

                     Попередні  припущення  про  ймовірність  потоку  керування
                      або  даних  у  програмі  часто  бувають  некоректними.  У
                      результаті типовим може стати маршрут, модель обчислень

                      за яким опрацьована слабо.
                     При  записі  алгоритму  програмного  забезпечення  у  вигляді
                      тексту  на  мові  програмування  можливе  внесення  типових

                      помилок трансляції (синтаксичних і семантичних).
                     Деякі результати в програмі залежать не від вихідних даних,
                      а від внутрішніх станів програми.

                                                           65
   60   61   62   63   64   65   66   67   68   69   70