Page 59 - 4592
        P. 59
       Критерій  повинен  бути  достатнім,  тобто  показувати,  коли
                      деякий кінцевий  безліч  тестів  досить  для  тестування  даної
                      програми.
                     Критерій  повинен  бути  повним,  тобто  у  разі  помилки
                      повинен  існувати  тест  з  безлічі  тестів,  що  задовольняють
                      критерію, який розкриває помилку.
                     Критерій повинен бути надійним, тобто будь-які два безлічі
                      тестів,  що  задовольняють  йому,  одночасно  повинні
                      розкривати або не розкривати помилки програми.
                     Критерій  повинен  бути  легко  перевіряється,  наприклад,
                      обчислюваним на тестах.
                      Для нетривіальних класів програм у загальному випадку не
               існує повного і надійного критерію, що залежить від програм або
               специфікацій.  Тому,  як  правило,  прагнуть  до  ідеального
               загальному критерію через реальні приватні.
                      Класи критеріїв:
                     Структурні  критерії  використовують  інформацію  про
                      структуру програми (критерії так званого «білого ящика»).
                     Функціональні  критерії  формулюються  в  описі  вимог  до
                      програмного  виробу  (критерії  так  званого  «чорного
                      ящика»).
                     Критерії  стохастичного  тестування  формулюються  в
                      термінах  перевірки  наявності  заданих  властивостей  в
                      тестованого          програми,          засобами         перевірки         деякої
                      статистичної теорії.
                     Мутаційні  критерії  орієнтовані  на  перевірку  властивостей
                      програмного вироби на основі підходу Монте-Карло.
                      Структурні критерії (клас I).
                      Структурні  критерії  використовують  модель  програми  у
               вигляді  "білого  ящика",  що передбачає  знання  вихідного  тексту
               програми або специфікації програми у вигляді потокового графа
               управління.  Структурна  інформація  зрозуміла  й  доступна
               розробникам  підсистем  і  модулів  програми,  тому  даний  клас
               критеріїв  часто  використовується  на  етапах  модульного  та
               інтеграційного тестування.
                      Структурні критерії базуються на основних елементах УДП,
               операторах, гілках і шляхах.
                                                           59





