Сравнение нисходящего и восходящего тестирования интеграции

Нисходящее тестирование:

1) основной недостаток— необходимость заглушек и связанные с ними трудности тестирования;

2) основное достоинство — возможность раннего тестирования главных управляющих функций.

Восходящее тестирование:

1) основной недостаток — система не существует как объект до тех пор, пока не будет добавлен последний модуль;

2) основное достоинство — упрощается разработка тестовых вариантов, отсутствуют заглушки.

Возможен комбинированный подход. В нем для верхних уровней иерархии применяют нисходящую стратегию, а для нижних уровней — восходящую стратегию тестирования [3], [13].

При проведении тестирования интеграции очень важно выявить критические модули. Признаки критического модуля:

1) реализует несколько требований к программной системе;

2) имеет высокий уровень управления (находится достаточно высоко в программной структуре);

3) имеет высокую сложность или склонность к ошибкам (как индикатор может использоваться цикломатическая сложность — ее верхний разумный предел составляет 10);

4) имеет определенные требования к производительности обработки.

Критические модули должны тестироваться как можно раньше. Кроме того, к ним должно применяться регрессионное тестирование (повторение уже выполненных тестов в полном или частичном объеме).