Once the Unit Testing is complete, the modules are integrated together and testing done to check if the integration is seamless is called Integration Testing. This may again be done by the developers themselves or independently amongst them. Integration between modules / systems can happen in different ways:
1. Program-to-program integration (Intra-module interface)
2. Module (set of programs)-to-module integration (Inter-module interface)
3. System-to-system integration (External interface)