Table of Contents
Listen to article
Fixing a defect in production costs up to 100 times more than catching it during requirements. That’s not a theory — it’s one of the most well-documented findings in software engineering, backed by IBM and NIST research.
Most teams test. Few test systematically. Without structure, QA becomes a last-minute scramble — finding problems exactly when they’re hardest to fix.
The software testing life cycle (STLC) changes that: a repeatable framework that embeds testing into every development stage, not just the final push before release.
This guide covers all six STLC phases with entry and exit criteria, Agile and DevOps adaptation, key metrics, and the mistakes that make STLC fail.
What Is the Software Testing Life Cycle?
The software testing life cycle is a sequence of structured phases used to plan, design, execute, and evaluate testing activities throughout software development. Each phase has defined entry criteria, specific activities, exit criteria, and deliverables — making testing systematic, traceable, and repeatable.
The life cycle of software testing isn’t a single event triggered by a deadline; it’s an ongoing process running in parallel with development from the first requirement to production sign-off. That’s the difference between a QA program and a QA activity.
Without STLC, the testing life cycle in software defaults to reactive — driven by pressure, not a plan.
STLC is often confused with SDLC. They’re related — but distinct. That distinction is where the practical clarity starts.
STLC vs. SDLC: Understanding the Relationship
Same world, different jobs. The secure software development life cycle governs how software gets built — requirements, design, development, testing, deployment, and maintenance. STLC governs how it gets verified. One is the parent; the other is the sub-process running inside it.
|
|
SDLC |
STLC |
|
Scope |
Full development lifecycle |
Testing activities within the development process |
|
Owner |
Project manager, development team, stakeholders |
QA team, test lead, test manager |
|
Question it answers |
How do we build software? |
How do we know it works? |
|
Relationship |
Parent framework |
Sub-process within SDLC |
Teams that wire STLC into their software development services from day one — rather than dealing with it at the end — catch defects sooner and ship with fewer surprises.
The 6 Phases of the Software Testing Life Cycle
The stages of the software testing life cycle run in sequence — each phase gates the next. Here’s the full picture before we break each one down.
| Phase | What Happens | What You Walk Away With |
| 1. Requirement Analysis | Review specs, identify test types, flag gaps | RTM started; testable requirements list |
| 2. Test Planning | Define scope, team, tools, timeline, risk | Signed-off test plan |
| 3. Test Case Design | Write and peer-review test cases; prep test data | Approved test cases; RTM updated |
| 4. Environment Setup | Configure infrastructure; run smoke test | Verified, smoke-tested environment |
| 5. Test Execution | Run cases, log defects, retest, regress | Execution report; defect log |
| 6. Test Closure | Analyse leakage, archive artifacts, capture lessons | Test summary report; lessons learned |
Phase 1: Requirement Analysis
This is the most under-invested phase in QA — and the one that determines everything downstream.
The QA team works through the BRS, FRS, and SRS (or user stories and acceptance criteria in Agile) to establish what’s testable, what isn’t, and what needs clarification before planning can begin. Ambiguities flagged here cost almost nothing to resolve. But if they’re passed by, they produce defects that are expensive to find and even more expensive to fix.
This phase also kicks off the Requirements Traceability Matrix (RTM) — the document that links every requirement to a test case and makes coverage gaps impossible to hide.
Who’s involved: QA team, test lead, business analysts, developers
| Entry Criteria | Exit Criteria / Deliverables |
| Requirements docs available. BA or product owner accessible. QA team assigned. | RTM drafted. Testable/non-testable requirements split. Testing types confirmed. Open questions logged and submitted. |
Phase 2: Test Planning
Test Planning is where decisions get made — before the pressure of execution forces them.
The test plan defines scope (what’s in, what’s out, and why), team structure, tooling, automation strategy, effort estimates, schedule, and risk. Every choice made explicitly here is a choice that won’t have to be made reactively mid-sprint.
Avoid treating the test plan as a sign-off document rather than a working one. A plan that gets filed and forgotten isn’t a plan — it’s paperwork. The right model: update it when scope changes, reference it when priorities shift, and hold the team accountable to it throughout execution.
Who’s involved: Test lead, test manager, QA team, project manager
| Entry Criteria | Exit Criteria / Deliverables |
| Requirement Analysis complete. RTM draft and testable requirements list available. QA team assigned. | Signed-off test plan covering scope, team, tools, automation strategy, schedule, and risk register. Effort estimates agreed. |
Phase 3: Test Case Design and Development
This is where coverage either gets built in — or quietly left out.
Each test case documents the precondition, steps, expected result, and its RTM link. The standard is simple: any tester should be able to pick up a case and run it cold, without asking questions. If that’s not true, the case needs rewriting.
Test data gets created here too — real-data scenarios, boundary values, negative cases. The complexity scales significantly with project type. For instance, custom web application development typically demands a far wider range of test data scenarios than a standard off-the-shelf integration. And peer review isn’t optional: unreviewed test cases reliably contain gaps and ambiguities that only surface during execution, when fixing them is disruptive.
Who’s involved: Test engineers, QA team, peer reviewers
|
Entry Criteria |
Exit Criteria / Deliverables |
|
Approved test plan. Stable requirements. Environment design confirmed. |
Reviewed, approved test cases with RTM traceability. Test data in version control. Review sign-off complete. |
Phase 4: Test Environment Setup
You can’t test software properly in an environment that doesn’t reflect where it will run.
The test environment should match production as closely as possible — same hardware profile, OS, databases, integrations, and network configuration. The QA team, working with DevOps or infrastructure, provisions the environment, loads test data, and configures the automation framework.
Before full execution begins, a smoke test runs — a lightweight pass to confirm the environment itself is working. Teams that skip this step or start environment setup too late create a predictable chain reaction: blocked test cases, compressed timelines, and defects that reach production because there wasn’t time to find them properly.
Who’s involved: QA team, DevOps/infrastructure team, test lead
|
Entry Criteria |
Exit Criteria / Deliverables |
|
Environment specs documented. Approved test plan in place. Test cases in draft or final state. Infrastructure team available. |
Environment configured and documented. Build deployed. Test data loaded. Smoke test passed. Sign-off complete. |
Phase 5: Test Execution
This is the phase most people picture when they think about QA. It’s also the one that exposes every shortcut taken in the phases before it.
Testers work through cases in priority order — critical path and high-risk scenarios first. Every result is logged: pass, fail, or blocked. Failures become defect reports with full reproduction detail. Fixed defects get retested and regressed — because a fix that breaks something else isn’t a fix.
Daily tracking matters here: execution rate, defect open/close velocity, and blocked cases tell you whether you’re on track or heading for a compressed, under-tested release. Log everything — passes included. Complete execution records are a requirement under software assurance standards in regulated industries, and the foundation on which a meaningful test closure is built.
Who’s involved: Test engineers, QA team, development team
|
Entry Criteria |
Exit Criteria / Deliverables |
|
Environment set up and smoke-tested. Approved test cases and test data ready. Build deployed. |
All cases executed or formally deferred. Defect log complete with severity/priority. Execution report filed. Regression results documented. |
Phase 6: Test Closure
Most teams declare done when execution ends. That’s not done — that’s stopped.
Test Closure is where the work gets evaluated rather than just completed. The team checks actual outcomes against the exit criteria in the test plan, runs a defect leakage analysis to understand what escaped and why, and produces the test summary report: what was tested, what the results showed, what risks remain, and whether the release is recommended.
The test summary report answers the question every stakeholder is actually asking: is this ready to ship? App launches with a solid technical foundation don’t happen by accident — this report is part of what makes an informed go/no-go decision possible.
Skip this phase and you lose the institutional knowledge that makes the next STLC cycle better. Run it every time and you have a feedback loop that actually improves quality over time.
Who’s involved: QA team, test lead, project stakeholders
|
Entry Criteria |
Exit Criteria / Deliverables |
|
Execution complete (or formally closed with deferred item log). Release decision made. |
Test summary report filed. Defect leakage analysis complete. Artifacts archived. Lessons learned submitted. RTM final version filed. |
STLC in Agile and DevOps: How the Phases Adapt
The six phases of software testing life cycle don’t vanish in Agile or DevOps — they compress, shift, and partially automate.
In Agile (Scrum/Kanban)
Everything shrinks to sprint size. Requirement analysis runs against user stories at sprint planning. Test planning is lightweight and sprint-scoped. Design and execution happen within the same cycle. QA isn’t downstream anymore — it’s in refinement sessions, shaping acceptance criteria before a line of code gets written. And test closure is the retrospective.
In DevOps and CI/CD
Execution becomes continuous — unit, integration, and regression tests fire on every commit. Environments are ephemeral, provisioned via Infrastructure as Code. Closure happens per release cadence, not per milestone.
What doesn’t automate away: requirement analysis and test planning. Those still need human judgment on scope and risk — no pipeline replaces that. This is worth noting for teams evaluating software product consulting as part of their QA maturity review: automation accelerates execution, but it doesn’t replace planning.
The framework holds because STLC defines what testing requires, not how it gets organized. The tooling changes. The fundamentals don’t.
Common STLC Mistakes (And How to Avoid Them)
These are the patterns showing up consistently in QA programs that look structured on paper but underperform in practice.
- Skipping or rushing requirement analysis. Every defect that reaches production started somewhere. Most started here. Unclear requirements don’t produce failed test cases — they produce test cases that pass the wrong thing entirely.
- Treating the test plan as a paperwork exercise. A plan nobody references isn’t governing anything. It’s decoration. Keep it live; update it when scope moves.
- Test cases without RTM traceability. No traceability means no provable coverage. When requirements change, you’re guessing at the impact, not calculating it.
- Starting environment setup after test case design. These two run in parallel or you pay for it in compressed execution time and last-minute blockers.
- Declaring done at the end of execution. Without test closure and a defect leakage analysis, you don’t know if your STLC is working — you just hope it is.
- Not measuring defect leakage. If STLC activities are being completed but production defects aren’t decreasing, something in the process is broken — and you won’t find it without tracking what escapes.
Key Metrics to Track Across the STLC
Here are the metrics that tell you whether each phase is actually working.
|
Metric |
What It Tells You |
|
Test Coverage |
Whether every requirement has at least one test case — gaps show up here before execution, not during it |
|
Defect Density |
Which areas of the build carry the most risk — useful for focusing effort where it matters |
|
Defect Removal Efficiency (DRE) |
What % of defects were caught before production — the single most honest measure of STLC effectiveness |
|
Test Execution Rate |
Whether you’re on pace or heading for a compressed, under-tested release |
|
Defect Leakage Rate |
How much escaped — the number test closure exists to calculate |
|
Retest Pass Rate |
Whether dev fixes are actually fixing things |
DRE is the most important metric to watch. Above 95% means production is seeing less than 5% of total defects found. That’s not a feeling about quality — it’s a number you can improve against. Understanding the cost of software development in relation to quality failures makes the case for tracking DRE even more compelling: the cost of defects that escape to production dwarfs the investment in structured testing.
How to Choose a Software Development Partner Who Gets Testing Right
Most partners will tell you QA is a priority. Here’s how to verify that before you’re three months into a contract.
- QA is in the room from day one — not called in at the end. Ask exactly when QA joins the project. “After development” is your exit cue.
- They can show you a test plan. Ask to see a sample test plan. If they can’t show one, they don’t plan — they react. Test plans are a reliable signal of QA maturity.
- They know what an RTM is. And they use one. If requirement traceability is a new concept to them, coverage gaps won’t surface until production does.
- They measure defect leakage. Ask for DRE figures on recent projects. Not tracking it means not knowing how much escapes.
- Test closure is a deliverable, not a handshake. Summary report, archived artifacts, leakage analysis. Anything less isn’t a standard.
At Scopic, QA is integrated into every stage of our custom software development services —not added as an afterthought.
Conclusion and Key Takeaways
The software testing life cycle isn’t overhead — it’s the mechanism that determines whether defects get caught at design cost or production cost. That gap is an order of magnitude.
Compress the phases and you don’t save time — you defer the bill.
One phase matters more than most teams give it credit for: test closure. It’s the only place where defect leakage gets measured — and defect leakage is the only metric that tells you whether any of this is actually working.
If you want QA treated as a first principle — not a final step — see how Scopic builds it into every custom software development services engagement from day one.
FAQs
What is the software testing life cycle (STLC)?
STLC is a structured sequence of phases — plan, design, execute, evaluate — applied to all testing activities throughout a project. Each phase has defined entry criteria, exit criteria, and deliverables. The result: testing that’s systematic, not reactive.
What are the phases of the software testing life cycle?
The six phases of the software testing life cycle are: Requirement Analysis, Test Planning, Test Case Design and Development, Test Environment Setup, Test Execution, and Test Closure.
What are the stages of the software testing life cycle?
The stages of software testing life cycle refer to the same six-phase framework: analysis, planning, design, environment setup, execution, and closure. ‘Stages’ and ‘phases’ are used interchangeably in most QA contexts. The key point is that each stage has defined inputs, activities, and outputs.
What is the difference between STLC and SDLC?
SDLC covers the full development process. STLC is the testing sub-process running inside it — in parallel with development, not after it.
What are entry and exit criteria in STLC?
Entry criteria are the conditions that must be met before a phase can begin. Exit criteria are the conditions that must be met before a phase is considered complete. These criteria function as quality gates throughout the STLC.
How does the software testing life cycle work in Agile?
In Agile, the six phases compress into sprint cycles. Analysis at planning, execution within the sprint, closure at the retrospective. Faster and iterative — but structurally intact.
What is a Requirements Traceability Matrix (RTM) in STLC?
RTM is a document linking every requirement to at least one test case. Started in Phase 1, updated through Phase 3. No RTM means no provable coverage.
What is defect leakage and why does it matter in STLC?
Defect leakage refers to defects that were present in the software during testing but were not caught and instead reached production. The defect leakage rate is the most unambiguous measure of whether your STLC is actually working.
About Software Testing Life Cycle Guide
This guide was authored by Vesselina Lezginov.
Scopic provides quality and informative content, powered by our deep-rooted expertise in software development. Our team of content writers and experts have great knowledge in the latest software technologies, allowing them to break down even the most complex topics in the field. They also know how to tackle topics from a wide range of industries, capture their essence, and deliver valuable content across all digital platforms.



