Modules
Intermediate⏱ 8 min read

Software Testing Life Cycle (STLC)

sign in to track

The Software Testing Life Cycle (STLC) is a structured process that defines the different activities performed during software testing. While the Software Development Life Cycle (SDLC) covers the overall software development process, the STLC focuses specifically on testing activities.

The STLC helps testers organize their work from understanding the requirements to completing testing and reporting the final results.

Each phase of the STLC generally has:

  • Activities – What the testing team needs to do.

  • Entry Criteria – Conditions that should be met before starting the phase.

  • Exit Criteria – Conditions that should be met before completing the phase.

  • Deliverables – Documents or outputs produced during the phase.

  • Responsibilities – Tasks assigned to the people involved in testing.

Common STLC Phases

1. Requirement Analysis

Testers review the available requirements to understand what needs to be tested.

They identify testable requirements, clarify unclear areas, and determine the types of testing that may be required.

Example:
For a login feature, testers identify requirements for valid login, invalid credentials, password reset, and other defined behaviors.

2. Test Planning

The testing team decides what will be tested, how it will be tested, who will perform the testing, and when testing will take place.

This may include selecting testing techniques, tools, resources, timelines, and defining the overall test strategy.

3. Test Case Development

Testers create test cases and test scenarios based on the requirements.

Test data may also be prepared at this stage.

Example:
A tester creates test cases for valid credentials, incorrect passwords, empty fields, and other relevant scenarios.

4. Test Environment Setup

The required environment is prepared for testing. This may include configuring the application, database, devices, browsers, test accounts, and other required components.

The environment should be suitable for executing the planned tests.

5. Test Execution

Testers execute the prepared test cases and compare the actual results with the expected results.

When a difference is found, the issue is documented as a defect and reported to the appropriate team.

6. Test Closure

After the planned testing activities are completed, the team reviews the testing results.

This may include reviewing:

  • Test execution results

  • Defects found and their status

  • Test coverage

  • Testing objectives

  • Lessons learned

  • Final testing reports

The team then determines whether the defined exit criteria have been met.

Simple STLC Flow

Requirement Analysis → Test Planning → Test Case Development → Test Environment Setup → Test Execution → Test Closure

Example

For an e-commerce checkout feature, the STLC could look like this:

Requirement Analysis: Understand how checkout should work.

↓

Test Planning: Decide what checkout scenarios need to be tested and which testing methods will be used.

↓

Test Case Development: Create test cases for successful checkout, invalid payment details, missing information, and other relevant scenarios.

↓

Environment Setup: Prepare the application, database, test accounts, and required payment test environment.

↓

Test Execution: Execute the test cases and report any defects.

↓

Test Closure: Review the results, defect status, coverage, and final testing outcome.

The STLC provides a structured approach to software testing. It helps testing teams organize activities, define what needs to be completed at each stage, and produce clear testing deliverables from the beginning of testing through closure.

◈Key Points

  • Phase 1: Requirement Analysis — understand what needs to be tested, identify testable requirements.
  • Phase 2: Test Planning — scope, timeline, resources, tools, risk assessment.
  • Phase 3: Test Case Development — write, review, and baseline test cases and test data.
  • Phase 4: Test Environment Setup — configure hardware, software, network, and test data.
  • Phase 5: Test Execution — run tests, log defects, retest, regression test.
  • Phase 6: Test Closure — metrics, lessons learned, test summary report, sign-off.
⚡ Expert Pro Tip

Never skip the entry/exit criteria. They are your contractual agreement with the project on when testing starts and when 'done' actually means done.