нні покрокового і монолітного тестування можна відзначити наступні переваги першого підходу:
1) менша трудомісткість (для прикладу на рис.1 при монолітному тестуванні потрібні 5 драйверів і 5 заглушок; при покроковому тестуванні потрібні або тільки 5 драйверів - якщо модулі підключаються "знизу вгору ", - або тільки 5 заглушок - якщо модулі підключаються" зверху вниз ");
2) більш раннє виявлення помилок в інтерфейсах між модулями (їх збирання починається раніше, ніж при монолітному тестуванні);
3) легше відладка, тобто локалізація помилок (вони в основному пов'язані з останнім з підключених модулів); ​​
4) більш досконалі результати тестування (більш ретельна перевірка спільного використання модулів).
Є переваги і у монолітного тестування : p> 1) менше витрата машинного часу (Хоча через більшу складність відладки може бути потрібна додаткова перевірка програми і ця перевага буде зведена нанівець);
2) надається більше можливостей для організації паралельної роботи на початковому етапі тестування.
Загалом більш доцільним є вибір покрокового тестування. При його використанні можливі дві стратегії підключення модулів : Спадна і висхідна. p> Спадний тестування починається з головного (або верхнього) модуля програми, а вибір наступного модуля, що підключається відбувається з числа модулів, що викликаються з вже протестованих. Одна з основних проблем , Що виникають при низхідному тестуванні, - створення заглушок. Це тривіальна завдання, т. к. як правило недостатньо, щоб в заглушці виконувався висновок відповідного інформаційного сообщеніяі і повернення завжди одних і тих же значень вихідних даних. p> Інша Прблема, яку необхідно вирішувати при низхідному тестуванні, - форма представлення тестів в програмі, так як, як правило, головний модуль отримує вхідні дані не безпосередньо, а через спеціальні модулі введення, які при тестуванні на початку замінюються заглушками. Для передачі в головний модуль різних тестів треба або мати декілька різних заглушок, або записати ці тести в файл у зовнішній пам'яті і за допомогою заглушки зчитувати їх.
Оскільки після тестування головного модуля процес перевірки може продовжуватися по-різному, слід дотримуватися наступних правил : p> а) модулі, що містять операції введення-виведення, повинні підключатися до тестування як можна раніше;
б) критичні (тобто найбільш важливі ) Для програми загалом модулі також повинні тестуватися в першу чергу. p> 12
Основні переваги низхідного тестування : p> вже на ранній стадії тестування є можливість отримати працюючий варіант розроблюваної програми;
швидко можуть бути виявлені помилки, пов'язані з організацією взаємодія з користувачем.
Недоліки низхідній стратегії продемонструють з допомогою рис.2.
Припустимо, що на наступному кроці тестування заглушка...