Software Testing Life Cycle

Software Testing is a process rather than a single activity. The fundamental Software Testing life cycle consists of the following 5 steps:

  • Test Planning and Control
  • Analysis and Design
  • Implementation and Execution
  • Evaluating Exit criteria and Reporting
  • Test Closure activities

The Test team produces the Test Deliverables in accordance with the corresponding software testing life cycle stage/step.

Test Planning and Control

Test Planning determines the scope, objectives of testing and test approach. The availability of requirements is crucial at this stage.

Test Control is an ongoing activity of comparing actual progress against the plan and reporting the status (including deviations from the plan). It involves taking actions necessary to meet the mission and objectives of the project.

Test Plan & Test Estimates are the two important test documents produced in this phase.

Analysis and Design

In this phase, the software requirements are analysed to identify their testability and the expected behaviour of different features/functionalities of the software.

In addition to the above activities, test environment infrastructure and the support required to perform the testing are also identified.  

Test Scenarios / Cases and Traceability Matrix are the required documents. The Traceability Matrix maps the test cases with the corresponding requirements IDs. It helps in identifying the potential test cases to be updated, in case requirements changes. The matrix can also be used to find whether 100% requirements coverage is achieved.

Implementation and Execution

During Test Implementation,

  • Test cases are further refined,
  • Test data is created,
  • Test suites are created for efficient test execution and
  • Test environment is implemented and verified.

Test execution has the following major tasks,

  • Evaluating the entry criteria,
  • Executing the test cases,
  • Logging defects for the discrepancies/failed test cases and
  • Preparing Test Execution results.

Test Case Pass/Fail Criteria

The Test cases are executed and the status is documented against the expected result. The following results are applicable:

  • Passed
  • Failed
  • Blocked
  • Not Completed
  • Not Applicable (NA)

Status Reports are shared regularly with the stakeholders.

Evaluating Exit Criteria and Reporting

Evaluating Exit Criteria and Reporting is an activity during which test execution is assessed against the defined objectives. This should be performed at each test level.

Test Entry and Exit Criteria

The Entry criteria are required for the commencement of the next phase of testing in the testing life cycle. Similarly, the Exit criteria are required to exit the testing phase. 

The test results are checked against the exit criteria specified in the Test Plan document. Based on the assessment, a decision is to be made, whether to stop the testing or if more tests are to be executed. 

Test Summary Report

The Test Summary Report is to be produced, at the end of the testing phase. It specifies the overall test status about how the testing was done, test execution, defects status, confidence level of the Test Analyst and variances from the Test Plan.

Test Closure activities

The Post testing activities are meant to consolidate experience, test ware, facts and numbers.