Интеграционное тестирование
Интеграцио́нное тести́рование (англ. Integration testing, иногда называется англ. Integration and Testing, аббревиатура англ. I&T) — одна из фаз тестирования программного обеспечения, при которой отдельные программные модули объединяются и тестируются в группе. Обычно интеграционное тестирование проводится после модульного тестирования и предшествует системному тестированию.
Интеграционное тестирование в качестве входных данных использует модули, над которыми было проведено модульное тестирование, группирует их в более крупные множества, выполняет тесты, определённые в плане тестирования для этих множеств, и представляет их в качестве выходных данных и входных для последующего системного тестирования.
Целью интеграционного тестирования является проверка соответствия проектируемых единиц функциональным, приёмным и требованиям надежности. Тестирование этих проектируемых единиц — объединения, множества или группы модулей — выполняется через их интерфейс, с использованием тестирования «чёрного ящика».
Системы непрерывной интеграции
Для автоматизации интеграционного тестирования применяются системы непрерывной интеграции (англ. Continuous Integration System, CIS). Принцип действия таких систем состоит в следующем:
- CIS производит мониторинг системы контроля версий;
- При изменении исходных кодов в репозитории производится обновление локального хранилища;
- Выполняются необходимые проверки и модульные тесты;
- Исходные коды компилируются в готовые выполняемые модули;
- Выполняются тесты интеграционного уровня;
- Генерируется отчет о тестировании.
Таким образом, автоматические интеграционные тесты выполняются сразу же после внесения изменений, что позволяет обнаруживать и устранять ошибки в короткие сроки.
Существующие системы непрерывной интеграции
См. Сравнение систем непрерывной интеграции (англ. Comparison of continuous integration software)
Примечания
Литература
- Duvall, Paul M. Continuous Integration. Improving Software Quality and Reducing Risk. — Addison-Wesley, 2007. — ISBN 0-321-33638-0.
- Melymuka, V. TeamCity 7 Continuous Integration Essentials. — Packt Publishing, Limited, 2012. — ISBN 9781849693776.
- Kawalerowicz, M. and Berntson, C. Continuous Integration in .NET. — Manning, 2011. — 303 p. — ISBN 9781935182559.
- Burns, E. and Prakash, W. Hudson Continuous Integration in Practice. — McGraw-Hill Education, 2013. — 384 p. — ISBN 9780071804295.
- Berg, A.M. Jenkins Continuous Integration Cookbook - Second Edition. — 2015. — 408 p. — ISBN 9781784399245.
Ссылки
- C2. Continuous Integration .
- Fowler, Martin Practices . Continuous Integration. Дата обращения: 11 ноября 2009.