In our previous blog we understood how the V-model extends the waterfall model with the testing activities that need to be completed later in SDLC.
And for every development activity, we saw a corresponding testing activity. And how the test phase for a given level began during the corresponding software development activity.
- During the Requirements phase, testers reviewed the Requirement specification and used this as a basis to create the User Acceptance Test Plan.
- When the Functional Specification phase began, testers reviewed the Functional Specification and used this as a basis to create the Functional Test Plan.
- Developers used the Technical Specification to develop the Integration Test Plan. The Integration Test Plan details how the modules or Programs will be integrated, data that will be passed through the interfaces and the approach to Integration – Big Bang, Top-Down or Bottom -up.
- Developers used the Program Specification to develop Unit Test plans for the code they write.
So, in the V-model,
- Testing against the Requirements specification occurs at the User Acceptance testing stage.
- Testing against the Functional specification occurs at the System testing stage.
- Testing against the Technical specification occurs at the Integration testing stage.
- Testing against the Program specification occurs at the Unit testing stage.
And these stages are called Test Levels. The Test Levels help define the objective or goal of testing at that level and the typical problems testing at this level will reveal. For e.g. Integration testing is used to reveal the defects in the interfaces between modules.
The different test levels are:
- Unit(component) testing
- Integration testing
- System testing
- Acceptance testing
We will look at these test levels in detail in the coming blogs.