Software Test Life Cycle [STLC – Updated 2024 ]
Software Test Life Cycle
STLC stands for Software Test Life Cycle. STLC is defined as the phases of software testing activities performed on a project. STLC identifies what testing activities must be performed and when to accomplish them in a software project.
Test Life Cycle Phases
The different phases in STLC are as follows:
- Requirement Analysis
- Test Planning
- Test Design
- Test Environment Setup
- Test Execution
- Test Reporting and Closure
Requirement Analysis
In this phase, the QA team understands the software requirements. The QA would identify and analyze whether the requirements are testable or not.
Requirements could be either.
- Functional Requirements
- Non Functional Requirements
Test planning
This is the first phase of the testing process. The QA Team would create a Test Plan document for the project, define the Test strategy, and estimate the test effort. The team would also decide on the testing tools required for the project, test responsibilities and roles, training requirements for the project, etc.
Test Design
In this phase, the QA Team develops the project’s test cases. The team identifies test data and reviews it. The test cases are documented and entered into a Test Management tool (like TestLink). Automation test scripts are also developed for automation testing.
QA Team also prepares a traceability matrix that maps the testcases to requirements. This matrix is called the Requirement Traceability Matrix. This will ensure that the test cases cover all the product’s requirements.
TestLink Tutorial
Test Environment Setup
During this life cycle phase, the QA team is responsible for setting up the QA environment. This involves installing necessary software, servers, hardware, and network components and acquiring required testing tools for application testing. All tests will be conducted in this QA environment, and the QA team will execute the test cases.
QA is responsible for the QA Environment. Other environments are typical organizational setups that the Dev team, SysOps, or DevOps team manages.
Test Execution
During this phase, the QA Team will execute the test cases based on the Test plan. The test case results (Pass/Fail criteria ) must be updated for the test cases in the Test management tool.
Bugs will be logged for the failed test cases in the bug tracking tool. The development team would fix the bugs logged by the QA Team.
Test Reporting and Closure
This phase is the last in the life cycle. It involves Test reporting and understanding various test metrics. The QA team also discusses the bottlenecks and the preventive and corrective actions that must be taken for the upcoming projects.
Important Test metrics and Test closure reports will be prepared for the project.