Component testing is defined as a software testing type where the testing is performed on each individual component separately without integrating with other components. It’s also mentioned as a Module Testing when it’s viewed from an architecture perspective. Component Testing is also additionally referred as unit testing or could also be a program testing.
Any software as a whole is formed of several components. Component level testing these components individually. There is a test strategy and a test plan for component testing. Where each part of the software or application is taken into account individually. For each of this component, a Test Scenario are going to be defined which is brought down into a high level of test cases -> Low level detailed Test cases within prerequisites.
- Sort of development life cycle model chosen
- Complexity of the software or application which is under test.
- Testing with or without isolation from the remainder of other component in software or application.
Who will do that component testing?
Component testing is completed by developers. ’Unit testing’ is completed by the developers where they are doing the testing of a person functionality or procedure. After this unit testing is completed.
When should we do that component Testing?
Component testing is performed at the start of testing once the software development of a certain module under test is completed. This build referred as UT Build (Unit Testing Build) is major functionality of all components are tested during this phase.
Entry Criteria for component testing:
Minimum number of the component to be included within the UT should be developed and unit tested.
Here the functionality of each component should be working fine. There shouldn’t be presence of any critical or high medium severity and priority defects Defect log.
Component Testing Techniques
Based on the Depth levels, component testing are often categorised:
- CTIS- Component Testing In Small
- CTIL- Component Testing in Large
CTIS- Component testing in Small:
Component testing could also be with or without isolation of other components within the software or application which is under test. If it’s performed in the isolation of other component, then it’s referred as component testing in small.
Let us consider an example, where the web site which has 5 different webpages then testing each webpage separately and within the isolation of other components is referred as component testing in small.
Consider any website homepage which has many components like Home, Testing, SAP, WEB, Blog etc. Any software made from many components and also every component will have its own subcomponents. Testing each modules mentioned in example separately with none in integration with other components is referred as component Testing in Small.
CTIL-Component Testing in Large:
Component testing avoided without isolation of other components within the software or application which is under test is referred as Component Testing in Large.
Let us consider another example of an application which consists of three components say component A, Component B and Component C. The developer has developed the component B few of its functionalities are hooked in to component A and few are on component C.
The functionality flow is going to be A-> B-> C, which suggest there’s dependency to B from A and C as per the diagram stub is named function and therefore the driver is looking function. But the component A and therefore component C isn’t been developed yet so to check component B completely we can replace the component A and Component C by stub and driver’s as needed.