Strategies of Software Testing

Introduction to Testing

  • Testing is a set of activities which are decided in advance i.e before the start of development and organized systematically.
  • In the literature of software engineering various testing strategies to implement the testing are defined.
  • All the strategies give a testing template.
Following are the characteristic that process the testing templates:
  • The developer should conduct the successful technical reviews to perform the testing successful.
  • Testing starts with the component level and work from outside toward the integration of the whole computer based system.
  • Different testing techniques are suitable at different point in time.
  • Testing is organized by the developer of the software and by an independent test group.
  • Debugging and testing are different activities, then also the debugging should be accommodated in any strategy of testing.

Difference between Verification and Validation

Verification is the process to find whether the software meets the specified requirements for particular phase.The validation process is checked whether the software meets requirements and expectation of the customer.
It estimates an intermediate product.It estimates the final product.
The objectives of verification is to check whether software is constructed according to requirement and design specification.The objectives of the validation is to check whether the specifications are correct and satisfy the business need.
It describes whether the outputs are as per the inputs or not.It explains whether they are accepted by the user or not.
Verification is done before the validation.It is done after the verification.
Plans, requirement, specification, code are evaluated during the verifications.Actual product or software is tested under validation.
It manually checks the files and document.It is a computer software or developed program based checking of files and document.

Strategy of testing

A strategy of software testing is shown in the context of spiral.

Following figure shows the testing strategy:
testing strategies
Unit testing
Unit testing starts at the centre and each unit is implemented in source code.

Integration testing
An integration testing focuses on the construction and design of the software.

Validation testing
Check all the requirements like functional, behavioral and performance requirement are validate against the construction software.

System testing
System testing confirms all system elements and performance are tested entirely.

Testing strategy for procedural point of view

As per the procedural point of view the testing includes following steps.

1) Unit testing
2) Integration testing
3) High-order tests
4) Validation testing

These steps are shown in following figure:
steps testing