Integration Testing
Integration Testing
Integration Testing
Introduction:
As we covered in various articles in the Testing series there are various levels of testing:
How does Integration Testing fit into the Software Development Life
Cycle?
Once unit tested components are delivered we then integrate them together.
These “integrated” components are tested to weed out errors and bugs caused due to the
integration. This is a very important step in the Software Development Life Cycle.
Before we begin Integration Testing it is important that all the components have been
successfully unit tested.
As you may have read in the other articles in the series, this document typically describes
one or more of the following:
- How the tests will be carried out
- The list of things to be Tested
- Roles and Responsibilities
2
- Prerequisites to begin Testing
- Test Environment
- Assumptions
- What to do after a test is successfully carried out
- What to do if test fails
- Glossary
Simply put, a Test Case describes exactly how the test should be carried out.
The Integration test cases specifically focus on the flow of data/information/control from one
component to the other.
So the Integration Test cases should typically focus on scenarios where one component is
being called from another. Also the overall application functionality should be tested to make
sure the app works when the different components are brought together.
The various Integration Test Cases clubbed together form an Integration Test Suite
Each suite may have a particular focus. In other words different Test Suites may be created
to focus on different areas of the application.
As mentioned before a dedicated Testing Team may be created to execute the Integration
test cases. Therefore the Integration Test Cases should be as detailed as possible.
There are various factors that affect Software Integration and hence Integration Testing:
2) Automate Build Process where Necessary: A Lot of errors occur because the wrong
version of components were sent for the build or there are missing components. If possible
write a script to integrate and deploy the components this helps reduce manual errors.
3
3) Document: Document the Integration process/build process to help eliminate the
errors of omission or oversight. It is possible that the person responsible for integrating the
components forgets to run a required script and the Integration Testing will not yield correct
results.
4) Defect Tracking: Integration Testing will lose its edge if the defects are not tracked
correctly. Each defect should be documented and tracked. Information should be captured
as to how the defect was fixed. This is valuable information. It can help in future integration
and deployment processes.
Summary:
Integration testing is the most crucial steps in Software Development Life Cycle. Different
components are integrated together and tested. This can be a daunting task in enterprise
applications where diverse teams build different modules and components. In this article
you learned the steps needed to perform Integration Testing.
___________________________________________________________