When it comes to software development, all testing activities can be divided into several stages. Similar to the software development life cycle (SDLC), there is also a software testing life cycle (STLC). Following all of the stages can be crucial to getting the process right and translate into much higher efficiency of the performed tests and, as a result, a much higher quality of the final product. Read on to find out more.

6 phases of STLC – table of contents:

  1. Phase 1: Requirement analysis
  2. Phase 2: Test planning
  3. Phase 3: Test case development
  4. Phase 4: Environmental setup
  5. Phase 5: Test execution
  6. Phase 6: Test closure
  7. 6 phases of STLC – summary

Phase 1: Requirement analysis

This is the first step in the cycle. The test team carefully reviews the product requirements. If there are any conflicts, omissions, inaccuracies or misunderstandings, the test team discusses them with various project stakeholders, such as the business analyst or software architect.

Entry criteria:

  • Business Requirement Specification (BRS)
  • a software architecture document

Tasks to do:

  • determine the tests to be performed
  • set priorities for test execution
  • check which tests must be manual, and which must be automated

Exit criteria:

  • a list of requirements for testing
  • any tests to be automated

Phase 2: Test planning

At this stage, the validation team plans all testing activities by writing a test plan. This document specifies:

  • the objectives to be achieved
  • the processes and methods to be implemented
  • the environment and tools to be used
  • the elements to be tested or not tested
  • the organization of the team and the division of tasks,
  • intermediate goals for various activities
  • risks that may arise

Apart from developing the test plan, a cost estimate is also drawn up in this phase.

phases of STLC

Phase 3: Test case development

In this phase — also known as Test Design — there are four steps to follow:

1. Prepare test scenarios

The test manager or test leader prepares a test scenario which will be used to create test cases.

2. Create test cases

For each scenario, testers will write test cases so that they can verify that the software functionality meets its requirements. In the case of test automation, it is at this stage that test scripts will be written.

3. Prepare test data

The test team needs to prepare a set of data to be used when executing test cases. This can be positive or negative data to test the function’s performance in the case of correct, or incorrect data.

4. Prepare RTM

The test team prepares a key Requirement Traceability Matrix (RTM). This document is used to keep track of what tests are needed to verify whether requirements will be met or not. Before testing begins, stakeholders will conduct checks and validations of what was developed during the above activities.

Phase 4: Environmental setup

This is a phase in which the test team is not involved. A separate team will handle the preparation and configuration of the environment. Testers will be informed how the environment has been set up and which software version is up to date.

The only activity required of the test team is to prepare smoke tests to verify that the installed build is suitable for testing. If the smoke tests fail, the build will be rejected and testing will be suspended until the indicated problems are fixed.

Entry criteria:

  • test plan
  • test date
  • smoke test

Tasks to do:

  • test environment preparation
  • test environment setup
  • setting up test data
  • executing smoke tests on compilation

Exit criteria:

  • usable test environment
  • usable test data
  • positive smoke test results

Phase 5: Test execution

This is simply the execution of tests. During this phase, testers can identify possible anomalies and test the improvements developed by the programmers. The tasks of the testing team will be:

  • run the previously developed test cases and compare the expected result with the obtained one
  • maintain the test script
  • identify, detect, log and report any detected defects
  • retest the defect fixes

Entry criteria:

  • functioning test environment
  • correct test data
  • test plan
  • test cases to be executed

Tasks to do:

  • perform tests according to the test plan
  • document test results
  • manage the defect life cycle

Exit criteria:

  • executing all tests involving the MTR
  • updated test cases with results
  • defect reports

Phase 6: Test closure

The software will be implemented. The validation team meets to analyze the results and identify areas for improvement in future projects.The test manager prepares a test closure report, which will be done on a daily (DSR – daily status report) or weekly (WSR – weekly status report) basis, as agreed by the stakeholders.

In the end, the test team meets to analyze the test cases, defects found, time spent, compliance with deadlines, etc. In this way, it is possible to determine what needs to be improved in the next test cycle.

Entry criteria:

  • test execution reports
  • defect reports

Tasks to do:

  • analyze what has been tested
  • create a test closure report

Exit criteria:

  • closing the process without open defects
  • test closure report

6 phases of STLC – summary

Software development could not exist without a testing phase. Proper preparation for this process brings a number of benefits, including, most importantly, saving time and money for possible future revisions. We hope this article helped you learn more about software testing life cycle (STLC).

You’ve just read about 6 phases of STLC. Check out our other series about Python and Javascript!

If you like our content, join our busy bees community on Facebook, Twitter, LinkedIn, Instagram, YouTube, Pinterest.

6 phases of STLC | #4 First steps in software testing robert whitney avatar 1background

Author: Robert Whitney

JavaScript expert and instructor who coaches IT departments. His main goal is to up-level team productivity by teaching others how to effectively cooperate while coding.

First steps in software testing:

  1. What is software testing?
  2. 1 big truth about software errors
  3. Seven key ISTQB testing principles
  4. 6 phases of STLC
  5. Testing vs. debugging
  6. Verification and validation in the software testing process