The two types of testing Integration testing can be either a component integration testing or system integration testing. In this article, component integration testing is explained.
Integration testing is a form of putting together all the components (programs or units) of a application which are unit tested and all other components that make for the whole system. The different modules are initegrated together and their behaviour is tested accordingly. This type of testing increases the reliability of the software and performance among the modules which are integrated. For example we have to test the working of a audio application software in connection with the speaker that is unit testing but when you want to combine with Bluetooth and headphone application is integration testing. There are 3 types of testing approach in this. They are:
Big bang approach:
In this small components or modules are tested first then they are combined together to test the interface between them.
Top down approach:
This testing is done from top to bottom. High level modules are tested and then low level modules tested. Then the low level modules are joined together to test the whole system sometimes a dummy module is used to test if any one module is not ready for integration.
Bottom up approach:
This testing is reciprocate of the top down approach. Low level modules are tested first and then high level modules are tested. Then they both are integrated and tested together to study the behaviour other modules. Even here dummy variables or the modules are used to test if the module is not ready for the integration.
The Integration testing is performed by the developers to test the integration between the programs of the software using the development tools. The defects like inconsistent data flow, interface mismatch, inconsistent control flow, failures in communication can be identified using the integration testing. It is a white box testing type.
Check your understanding:
1. Write the examples of the scenarios/ software for each of above different types of testing.