Software Test Life Cycle(STLC)
STLC stands for Software Test Life Cycle. STLC is defined as the phases of Software testing activities performed in a project. STLC identifies what testing activities needed to perform and when to accomplish them in a software project.
Software 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
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
This phase is the first phase of the testing process. The QA Team would create Test Plan document for the project. Define Test strategy and estimate the test effort for the project. The team would decide on the testing tools required for the project, test responsibilities and roles, training requirements for the project, etc.
In this phase, the QA Team develops the test cases for the project. Test data is identified and is reviewed by the team. 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 Requirement Traceability Matrix . This will ensure that the test cases would cover all the requirements for the product.
Test Environment Setup
In this life cycle phase, the QA Team will setup the QA Environment. Team would install software, servers, hardware, network, acquire testing tools which is required for testing the application. Tests would be conducted on this QA Environment. QA Team would execute the test cases on this environment.
QA is responsible for the QA Environment. There are other environments is a typical organization setup that Dev team, SysOps or DevOps team manages.
During this phase, the QA Team will execute the test cases based on the test plan. The test case results (Pass/Fail criteria ) needs to 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. This phase involves Test reporting, understanding various test metrics. QA team also discusses the bottlenecks and the preventive and corrective actions that need to be taken for the upcoming projects.
Important Test metrics and Test closure report will be prepared for the project.