Component Testing
What is component testing?
The main objective of component testing is to verify the input/output behavior of the test object. It ensures that the test object’s functionality works correctly and completely as per the desired specification.
This type of testing focuses on performing separate tests on each component. It is often done in isolation from the rest of the system, depending on the software development life-cycle model and system, which may require mock objects, service visualization, harnesses, stubs, and drivers.
Benefits of Component Testing
- reducing risk
- building confidence in the component’s quality
- finding defects in the component to prevent them from escaping to higher test levels
- verifying if functional and non-functional behaviors of components are designed and specified accordingly
In the case of incremental and iterative development models (e.g., Agile), where code changes are ongoing, automated component regression tests play a crucial role in building confidence that changes have not broken existing components.
Types of Component Testing
It may be performed with or without other modules in the particular application or the software under a test. If the testing is executed in segregation with other modules is signified as CTIS.
For component testing in large testing, we execute the testing without segregation with other software modules.