What is Integration Testing?
Integration Testing is a type of testing in which two or more than two functions tested in an integrated way. In this testing, stubs and drivers used to do testing, as mocks used in Unit testing to test functions independently. It provides a feature to link two or more modules, only after that testing done in an integrated format. In this type of testing, two modules tested in an integrated form.
Why it is important?
It is a type of testing, performed after Unit testing and before System testing. Without the execution of it in the correct format, it will not be possible to execute System Testing in a good way.
The quality assurance and software testing process of software development is as necessary as the actual code had written. Click to explore about, Software Testing Best Practices
What are the benefits of it?
Some of the benefits mentioned below to understand the need to use an Integration Testing technique -
- It is a type of testing that ensures that modules work in an integrated way.
- It is testing technology, started when modules become available on which testing to be performed.
- It mainly detects an error relative to an interface.
How does it work?Different approaches to Integration Testing -
Big-BangIt is an approach of testing in which all methods or units combined and tested into a single step. It is a type of testing followed only when a testing team receives an entire software in a bundle. What is the difference between Big Bang Integration testing and System testing? Big Bang Integration Testing checks an interaction between modules or units. But in a System Testing entire system tested into a single step.
Top-downIt is the type of testing in which top-level units tested first and then after that lower level unit or modules tested step by step after each other. This approach adopted when top-down development approach followed. Stubs used to get simulation with lower level modules not available due to an initial phase.
Bottom UpIts an approach of testing where bottom level functions/modules/units tested first, step by step after one. This type of approach works only when a bottom-up development approach followed. In this type of testing, test drivers get simulation with higher level units not available during an initial phase of testing.
Sandwich/HybridIt is an approach where the combination of Top-Down and Bottom-up approaches followed.
Intelligent Test Automation Improves Software Testing Capabilities. Click to explore about, Test Automation in DevOps
How to adopt it?Some steps mentioned below, according to that Unit Testing to be considered -
- To get understand the architecture of an application.
- Identification of all modules that are present in an application.
- To get understand the working of each module.
- Understand how a data is going to be transferred from one module to another.
- Understand a way that how data is entered and received into a system.
- After above all steps-identify and create test conditions.
- Take one condition at a time and then after that write test cases.
- Before starting Integration testing for application, Entry and Exit criteria are required.
Entry criteriaFollowing things need to be satisfied before starting entering into this testing technique-
- Unit Testing of components and modules.
- High priority bugs fixed.
- All modules to code completed and integrated successfully.
- Integration test plans and test cases required to be adequately documented.
- Test Environment set up for Integration Testing.
- After execution of this testing for an application following conditions required to be satisfied.
- Successful Testing of an integrated application.
- All executed test cases adequately documented.
- High priority bugs fixed and closed correctly.
- Technical documents submitted, and a release document should follow these documents.
A process that allows the user to check that the provided data, they deal with, is valid or complete. Click to explore about, Data Validation Testing Tools