Integration testing is a software verification phase that exercises the interfaces and interactions between combined components or systems, rather than units in isolation. It detects defects in data contracts, protocols, timing, and configuration that emerge only when modules are wired together. Sitting between unit and system testing, it is essential for catching interface mismatches before end-to-end and acceptance stages.
Content
- Strategies include big-bang, top-down, bottom-up, and sandwich integration, often supported by stubs and test doubles for not-yet-available dependencies. Contract tests and service virtualisation make integration testing repeatable in continuous-integration pipelines.