Деление алгоритма на типовые стандартные структуры, согласно проектной процедуре кодирования текста модуля (метода) из пятой главы учебника, позволяет минимизировать усилия программиста, затрачиваемые им на тестирование. Запрет на вложенные структуры как раз и объясняется излишними затратами на тестирование. Использование цепочки простых альтернатив с одним действием или структуры ВЫБОР вместо вложенных простых АЛЬТЕРНАТИВ значительно сокращает число тестов!
11.5. ПРОЕКТИРОВАНИЕ ТЕСТОВ БОЛЬШИХ ПРОГРАММ
Проектирование тестов больших программ пока в большей мере остается искусством и в меньшей мере является наукой. Чтобы построить разумную стратегию тестирования, надо разумно сочетать оба этих два крайних подхода и пользоваться математическими доказательствами.
Восходящее тестирование. Сначала автономно тестируются модули нижних уровней, которые не вызывают других модулей. При этом достигается такая же их высокая надежность, как и у встроенных в компилятор функций. Затем тестируются модули более высоких уровней вместе с уже проверенными модулями и т. д. по схеме иерархии.
При восходящем тестировании для каждого модуля необходима ведущая программа. Это монитор или драйвер, который подает тесты в соответствии со спецификациями тестов. Ряд фирм выпускает промышленные драйверы или мониторы тестов.
Нисходящее тестирование. При этом подходе изолированно тестируется головной модуль или группа модулей головного ядра. Программа собирается и тестируется сверху вниз. Недостающие модули заменяются заглушками.
11.6. КРИТЕРИИ ВЫБОРА НАИЛУЧШЕЙ СТРАТЕГИИ РЕАЛИЗАЦИИ
Критериями выбора наилучшей стратегии реализации программы являются:
• время до полной сборки программы;
• время реализации скелета программы;
• имеющийся инструментарий тестирования;
• мера параллелизма ранних этапов реализации;
• возможность проверки любых путей программы данными из заглушек;
• сложность планирования и соблюдения графика реализации;
• сложность тестирования.
11.7. СПОСОБЫ И ВИДЫ ТЕСТИРОВАНИЯ ПОДПРОГРАММ. ПРОЕКТИРОВАНИЕ ТЕСТОВ
Существуют два способа тестирования: публичный и приватный.
Публичное тестирование означает, что любой желающий может получить данный продукт (либо бесплатно, либо по цене дисков и доставки).
Приватный способ тестирования означает, что проверку продукта производит ограниченный круг тестировщиков, которые выразили согласие активно работать с продуктом и оперативно сообщать обо всех выявленных дефектах. Часто используются оба способа: сначала программа проходит приватное тестирование, а затем, когда все крупные проколы уже выявлены, начинается ее публичное тестирование, чтобы собрать отзывы широкого круга пользователей.
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии