Software Testing - Software Testing Life Cycle
The Software Testing Life Cycle (STLC) is a step-by-step process that defines all the activities carried out during the testing of software.
It ensures testing is systematic, efficient, and effective.
Phases of STLC
1. Requirement Analysis
-
Goal: Understand what needs to be tested.
-
Activities:
-
Analyze functional and non-functional requirements.
-
Identify testable requirements.
-
Review with stakeholders.
-
-
Output: Requirement Traceability Matrix (RTM), clarification documents.
2. Test Planning
-
Goal: Define the testing strategy and resources.
-
Activities:
-
Decide test scope, objectives, schedule, budget.
-
Identify test environment needs and tools.
-
Assign roles and responsibilities.
-
-
Output: Test Plan document.
3. Test Case Design (Test Design)
-
Goal: Create detailed test cases and test data.
-
Activities:
-
Write test cases for each requirement.
-
Prepare test data.
-
Review and approve test cases.
-
-
Output: Test cases, test scripts.
4. Test Environment Setup
-
Goal: Prepare hardware, software, and network for testing.
-
Activities:
-
Configure systems and tools.
-
Install required software builds.
-
Ensure environment matches production as closely as possible.
-
-
Output: Ready test environment.
5. Test Execution
-
Goal: Run the test cases on the software build.
-
Activities:
-
Execute tests (manual or automated).
-
Log results and defects.
-
Retest after fixes.
-
-
Output: Test execution reports, defect reports.
6. Test Closure
-
Goal: Finalize and evaluate the testing process.
-
Activities:
-
Assess if testing objectives were met.
-
Document lessons learned.
-
Archive test artifacts for future reference.
-
-
Output: Test summary report, closure report.