Интеграционное тестирование

Интеграцио́нное тести́рование (англ. Integration testing, иногда называется англ. Integration and Testing, аббревиатура англ. I&T) — одна из фаз тестирования программного обеспечения, при которой отдельные программные модули объединяются и тестируются в группе. Обычно интеграционное тестирование проводится после модульного тестирования и предшествует системному тестированию.

Интеграционное тестирование в качестве входных данных использует модули, над которыми было проведено модульное тестирование, группирует их в более крупные множества, выполняет тесты, определённые в плане тестирования для этих множеств, и представляет их в качестве выходных данных и входных для последующего системного тестирования.

Целью интеграционного тестирования является проверка соответствия проектируемых единиц функциональным, приёмным и требованиям надежности. Тестирование этих проектируемых единиц — объединения, множества или группы модулей — выполняется через их интерфейс, с использованием тестирования «чёрного ящика».

Системы непрерывной интеграции править

Для автоматизации интеграционного тестирования применяются системы непрерывной интеграции (англ. Continuous Integration System, CIS). Принцип действия таких систем состоит в следующем:

  1. CIS производит мониторинг системы контроля версий;
  2. При изменении исходных кодов в репозитории производится обновление локального хранилища;
  3. Выполняются необходимые проверки и модульные тесты;
  4. Исходные коды компилируются в готовые выполняемые модули;
  5. Выполняются тесты интеграционного уровня;
  6. Генерируется отчет о тестировании.

Таким образом, автоматические интеграционные тесты выполняются сразу же после внесения изменений, что позволяет обнаруживать и устранять ошибки в короткие сроки.

Существующие системы непрерывной интеграции править

См. Сравнение систем непрерывной интеграции (англ. 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.

Ссылки править