Некоторые подходы к интеграционному тестированию и их особенности:
Подход «Большого взрыва». 25 Все компоненты собираются вместе, а затем тестируются. 5 Преимущества: удобно для небольших систем. 5 Недостатки: сложно локализовать ошибки, некоторые из них при тестировании можно пропустить, недостаток времени, так как тестирование интеграции может начаться только после того, как все модули спроектированы. 5
Нисходящая стратегия. 3 Тестирование проводится в направлении от высокоуровневых модулей к низкоуровневым. 3 Преимущества: обнаружение и локализация ошибок вызывают меньше проблем, появляется возможность получить ранний прототип, критические модули имеют приоритет, недостатки дизайна можно исправить в первую очередь. 3 Недостатки: проверка низкоуровневых компонентов может занять больше времени, слишком большое количество попыток может усложнить процесс. 3
Восходящий подход. 3 Проверка кода проводится в обратном направлении: сначала проверяются низкоуровневые компоненты, а потом — высокоуровневые. 3 Преимущества: меньше проблем, связанных с поиском и локализацией неисправностей, устранение неполадок требует меньше времени и усилий. 3 Недостатки: критические компоненты можно тестировать только на поздних стадиях, это не лучший выбор для программного обеспечения, содержащего много низкоуровневых модулей. 3
Смешанный подход (сэндвич, гибридная интеграция). 25 Модуль самого высокого уровня тестируется отдельно, а модули нижнего уровня тестируются по схеме снизу вверх. 2 Преимущества: даёт уверенность в модулях нижнего уровня, сразу виден общий уровень готовности софта к релизу, полезен для больших проектов. 2 Недостатки: нужно дополнительно время на координацию и вовлечение потенциально большего числа участников тестирования. 2
Выбор подхода к интеграционному тестированию зависит от специфики проекта, используемых технологий и требований к тестированию. 1