Phases in Software Testing Life Cycle

Phases in Software Testing Life Cycle

The fundamental test process consists of the following main activities:

  1. Planning and Control 
  2. Analysis and Design
  3. Implementation and execution 
  4. Evaluating exit criteria and reporting 
  5. Test closure activities

Test planning and control Test planning is the activity of verifying the mission of testing, defining the objectives of testing and the specification of test activities in order to meet the objectives and mission. Test control is the ongoing activity of comparing actual progress against the plan, and reporting the status, including deviations from the plan.
 
Test analysis and design Test analysis and design is the activity where general testing objectives are transformed into tangible test conditions and test cases. Test analysis has the following major tasks:
  • Reviewing the test basis (such as requirements, architecture, design, interfaces).
  • Evaluating testability of the test basis and test objects.
  • Identifying and prioritizing test conditions based on analysis of test items, the specification.
  • Behavior and structure.
  • Designing and prioritizing test cases.
  • Identifying necessary test data to support the test conditions and test cases.
  • Designing the test environment set-up and identifying any required infrastructure and tools.

Test implementation and execution Test implementation and execution is the activity where test procedures or scripts are specified by combining the test cases in a particular order and including any other information needed for test execution, the environment is set up and the test are run.
Test implementation and execution has the following major tasks:
  • Developing implementing and prioritizing test cases.
  • Developing and prioritizing test procedures, creating test data and, optionally, preparing test harness and writing automated test scripts.
  • Creating test suits from the test procedures for efficient test execution.
  • Verifying that the test environment has been set up correctly.
  • Executing test procedures, either manually or by using test execution tools, according to the plane sequence.
  • Logging the outcome of test execution and recording the identities and versions of the software under test, test tools and test ware.
  • Comparing actual results with expected results.
  • Reporting discrepancies as included and analyzing them in order to establish their cause.

Evaluating exit criteria and reporting Evaluating exit criteria is the activity where test execution is assessed against the defined objectives. This should be done for each test level. Evaluating exit criteria has the following major tasks:
  • Checking test logs against the exit criteria specified in test planning.
  • Assessing if more tests are needed or if the exit criteria specified should be changed.
  • Writing a test summary report for stakeholders.

Test closure activities Test closure activities collect data from completed test activities to consolidate experience, test ware, facts and numbers. For example, when a software system is released, a test project is completed (or cancelled), milestone has been achieved, or a maintenance release has been completed.
Test closure activities include the following major tasks:
  • Checking which planned deliverables have been delivered, the closure of incident reports or raising of change records for any that remain open, and the documentation of the acceptance of the system.
  • Finalizing and archiving test ware, the test environment and the test infrastructure for later reuse.
  • Handover of test ware to the maintenance organization.
  • Analyzing lessons learned for future releases and projects, and the improvement of test maturity.


Similar Articles