В инкрементальном методе выделяют две
В инкрементальном методе выделяют две стратегии добавления модулей:
- "Сверху вниз" и соответствующее ему восходящее тестирование.
- "Снизу вверх" и соответственно нисходящее тестирование.
Особенности монолитного тестирования заключаются в следующем: для замены неразработанных к моменту тестирования модулей, кроме самого верхнего (К на Рис. 5.1), необходимо дополнительно разрабатывать
драйверы (
test driver) и/или
заглушки (
stub) [9], замещающие отсутствующие на момент сеанса тестирования модули нижних уровней.
Сравнение монолитного и интегрального подхода дает следующее:
- Монолитное тестирование требует больших трудозатрат, связанных с дополнительной разработкой драйверов и заглушек и со сложностью идентификации ошибок, проявляющихся в пространстве собранного кода.
- Пошаговое тестирование связано с меньшей трудоемкостью идентификации ошибок за счет постепенного наращивания объема тестируемого кода и соответственно локализации добавленной области тестируемого кода.
- Монолитное тестирование предоставляет большие возможности распараллеливания работ особенно на начальной фазе тестирования.
Особенности нисходящего тестирования заключаются в следующем: организация среды для исполняемой очередности вызовов оттестированными модулями тестируемых модулей, постоянная разработка и использование заглушек, организация приоритетного тестирования модулей, содержащих операции обмена с окружением, или модулей, критичных для тестируемого алгоритма.
Например, порядок тестирования комплекса K (Рис. 5.1) при нисходящем тестировании может быть таким, как показано в примере 5.3, где тестовый набор, разработанный для модуля Mi, обозначен как XYi = (X, Y)i
1) K->XYK 2) M1->XY1 3) M11->XY11 4) M2->XY2
5) M22->XY22
6) M21->XY21
7) M12->XY12
Пример 5.3. Возможный порядок тестов при нисходящем тестированииНедостатки нисходящего тестирования:
- Проблема разработки достаточно "интеллектуальных" заглушек, т.е. заглушек, способных к использованию при моделировании различных режимов работы комплекса, необходимых для тестирования
- Сложность организации и разработки среды для реализации исполнения модулей в нужной последовательности
- Параллельная разработка модулей верхних и нижних уровней приводит к не всегда эффективной реализации модулей из-за подстройки (специализации) еще не тестированных модулей нижних уровней к уже оттестированным модулям верхних уровней
Особенности восходящего тестирования в организации порядка сборки и перехода к тестированию модулей, соответствующему порядку их реализации.
Например, порядок тестирования комплекса K (Рис. 5.1) при восходящем тестировании может быть следующим (пример. 5.4).
1) M11->XY11 2) M12->XY12 3) M1->XY1 4) M21->XY21 5) M2(M21, Stub(M22))->XY2
6) K(M1, M2(M21, Stub(M22)) ->XYK 7) M22->XY22
8) M2->XY2
9) K->XYK
Пример 5.4. Возможный порядок тестов при восходящем тестированииНедостатки восходящего тестирования:
- Запаздывание проверки концептуальных особенностей тестируемого комплекса
- Необходимость в разработке и использовании драйверов
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий