Преимущества нисходящего тестирования:
- Обнаружение и локализация ошибок вызывают меньше проблем. 4
- Есть возможность получить ранний прототип. 4
- Критические модули имеют приоритет. 4
- Недостатки дизайна можно исправить в первую очередь. 4
- Большинство тестов готовится в форме, рассчитанной на пользователя. 1
- Во многих случаях относительно небольшой объём отладочного программирования. 1
- Отпадает необходимость тестирования сопряжения модулей. 1
Некоторые недостатки нисходящего тестирования:
- Модуль редко тестируется досконально сразу после его подключения. 13 Программист может проверить лишь часть условий в модуле, а об отложенных условиях часто забывают. 1
- Сложно проверять исключительные ситуации в модуле, если программа работает с ним лишь в ограниченном контексте. 1
- Затруднена подготовка тестов и требуется высокая квалификация разработчика тестов. 1
- Проверка низкоуровневых компонентов может занять больше времени. 4 Это приводит к задержкам в предоставлении результатов тестирования или некоторым пробелам в тестировании. 4
- Слишком большое количество попыток может усложнить процесс. 4