Enrol to start learning
Reading is open to everyone. Enrolling is free, and it is what unlocks the audio lessons, practice tests and progress tracking.
3.1. Phases of STLC
Learn content
Interactive Audio Lesson
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Let's start with Requirement Analysis in the STLC. This phase is crucial for understanding what needs to be tested.
What activities are included in this phase?
Good question! Activities include reviewing Business Requirement Documents, identifying any gaps, and clarifying with stakeholders. Remember the acronym RTM, which stands for Requirements Traceability Matrix, as it's a key deliverable.
Why do we need to clarify requirements?
Clarifying requirements helps to resolve ambiguities, ensuring we know what is testable. This reduces confusion later in the testing process.
What happens if we don't clarify them?
If we skip this, we may end up testing the wrong functionalities or missing critical bugs. Let's recap: Requirement Analysis identifies requirements and overlaps into the next phase, Test Planning.
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Moving on to Test Planning, our objective here is to define the strategy, scope, and objectives. What do you think are the main activities?
I believe we identify test objectives and types?
Correct! We also estimate resources and define roles and responsibilities. A helpful mnemonic is 'SEED': Strategy, Estimation, Entry/Exit criteria, and Documentation.
What is the significance of the Entry and Exit criteria?
Entry and Exit criteria ensure that we start and finish phases correctly, preventing rushed testing. For instance, don't start testing until you have a finalized test plan!
Can you remind us what the deliverables are?
Absolutely! They include the Test Plan Document and Risk Management Plan, which are pivotal for guiding the testing process.
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Next is Test Case Development, where we translate requirements into actionable test cases. What do we need to prepare?
We create test cases and prepare test data?
Correct! Also, we focus on reviewing these test cases to ensure completeness. A tip is to always check that you have both positive and negative test cases.
Why is test data important?
Test data provides the input needed to run scenarios. Think of it as the fuel for your tests. Deliverables include Test Cases and the Test Data, which are critical for later phases.
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
Now, let's discuss Test Environment Setup. Why is this phase important?
Because we need to ensure the testing environment is ready before we execute tests.
Exactly! Activities include configuring servers and validating the environment with smoke tests. An easy way to remember is 'CHECK': Configuring, Hardware, Environment, Credentials, Knowledge, which encapsulates what's needed.
What kind of reports do we generate here?
The Environment Validation Report lists the configurations and checks performed. This will safeguard us during test execution.
Unlock the classroom podcast
The transcript is free to read. A free account plays the conversation back.
In the Test Execution phase, we run our test cases. What are the main activities here?
Executing tests, logging defects, and retesting after fixes?
Correct! It's crucial to log defects accurately in tools like JIRA. The deliverables include the Test Execution Report and Defect Reports. Remember the mnemonic 'EAT BREAD': Execute, Analyze, Track, Bug Reporting and Review, Evaluation, Analysis, Deliver.
What’s the last phase?
The Test Cycle Closure phase, where we evaluate the overall testing effort, document learnings, and archive testware. This phase ensures continuous improvement and knowledge retention.
Overview
Short Summary
The Phases of the Software Testing Life Cycle (STLC) outline a structured process followed by QA teams to ensure efficient and effective testing.
Medium Summary
The STLC encompasses six key phases: Requirement Analysis, Test Planning, Test Case Development, Test Environment Setup, Test Execution, and Test Cycle Closure, each with specific objectives, activities, and deliverables that streamline the software testing process.
Detailed Summary
Phases of the Software Testing Life Cycle (STLC)
The Software Testing Life Cycle (STLC) is crucial in ensuring that software quality is maintained throughout the development process. This section details the six distinct phases of STLC:
-
Requirement Analysis:
- Objective: Understand the testing requirements thoroughly.
- Activities: Reviewing key documents, identifying ambiguities, and clarifying requirements with stakeholders.
- Deliverables: Requirements Traceability Matrix (RTM) and Requirements Review Report.
-
Test Planning:
- Objective: Define the testing strategy and logistics.
- Activities: Identify test objectives, estimate resources, and establish roles.
- Deliverables: Test Plan Document and Risk Management Plan.
-
Test Case Development:
- Objective: Create detailed test cases and prepare test data.
- Activities: Design manual or automated test scripts and review them for completeness.
- Deliverables: Test Cases and Test Data.
-
Test Environment Setup:
- Objective: Prepare the necessary environment for testing.
- Activities: Configuring servers, installing tools, and validating readiness.
- Deliverables: Environment Validation Report.
-
Test Execution:
- Objective: Execute tests and log defects.
- Activities: Carrying out manual or automated tests, comparing actual vs expected results, and recording defects.
- Deliverables: Test Execution Report and Defect Report.
-
Test Cycle Closure:
- Objective: Assess results and formally close testing activities.
- Activities: Evaluating metrics, conducting post-mortems, and archiving testware.
- Deliverables: Test Summary Report and Lessons Learned Document.
This systematic approach ensures that testing is thorough and meets quality standards, ultimately leading to a more reliable product.
Audio Book
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account1. Requirement Analysis
Objective: Understand what needs to be tested and identify testable requirements.
Activities:
- Review Business Requirement Documents (BRD), Functional Specs, User Stories
- Identify gaps, inconsistencies, or ambiguities
- Determine testable and non-testable requirements
- Involve BA/Product Owner for clarification
Deliverables:
- Requirements Traceability Matrix (RTM)
- Requirements Review Report
Entry Criteria:
- BRD/FRD/User Stories are available
- QA team is identified
Exit Criteria:
- Requirement understanding is signed off
- RTM is initiated
Detailed Explanation
In the Requirement Analysis phase, the primary goal is to thoroughly understand the specifications of the software that needs testing. This involves reviewing documents like Business Requirement Documents (BRD) and Functional Specifications. The QA team looks for any gaps or inconsistencies in the requirements and determines which aspects can be tested. Collaborating with the Business Analyst (BA) or Product Owner is crucial for clarifying any unclear or ambiguous points in the requirements.
The key outputs of this phase include the Requirements Traceability Matrix (RTM) and a Requirements Review Report, which help ensure that all requirements are covered in testing. To start this phase, certain conditions (entry criteria) must be met, such as having the necessary documentation available and a QA team in place. The phase concludes when the understanding of requirements is signed off and the RTM is initiated.
Examples & Analogies
Think of Requirement Analysis like preparing to build a house. Before any construction can begin, the architect needs a clear blueprint and understanding of what the homeowner wants. Any gaps in the plan, like missing rooms or unclear measurements, can lead to problems later. Similarly, in software testing, identifying testable requirements upfront helps avoid issues during the actual testing phase.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account2. Test Planning
Objective: Define the strategy, scope, objectives, and logistics of the testing process.
Activities:
- Identify test objectives and types (functional, regression, smoke)
- Estimate effort and resources
- Decide tools, roles, responsibilities
- Define Entry and Exit Criteria for each test phase
Deliverables:
- Test Plan Document
- Risk Management Plan
- Effort Estimation Sheet
Entry Criteria:
- Requirements baseline is completed
- Test strategy template is available
Exit Criteria:
- Test plan is reviewed and approved
- Team and environment are ready
Detailed Explanation
During the Test Planning phase, the focus shifts to strategizing how testing will be conducted. This involves determining the overall goals of testing, identifying what types of tests will be performed (e.g., functional or regression testing), and estimating the resources and efforts required. Critical decisions are made about which tools will be used and assigning roles and responsibilities to team members. Additionally, entry and exit criteria for testing phases are defined to ensure a structured approach.
The deliverables for this phase include the Test Plan Document, which outlines the entire testing approach, and a Risk Management Plan that identifies potential obstacles. The phase starts once the requirement baseline is established and ends when the plan has been reviewed and approved, and the team is prepared to begin testing.
Examples & Analogies
Imagine planning a big event, like a wedding. Before the day arrives, you need to make a detailed plan: choosing the venue, determining your budget, and organizing tasks. Each member of the planning team takes on a specific role, and you set clear timelines for when each aspect must be done. This structured planning is essential to ensuring that the event runs smoothly, just as Test Planning does for testing a software product.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account3. Test Case Development
Objective: Design detailed test cases based on requirements and prepare test data.
Activities:
- Write manual test cases or automated scripts
- Identify and create test data (dummy inputs)
- Review test cases for completeness and coverage
Deliverables:
- Test Cases & Test Scripts
- Test Data
- Review Comments/Sign-off
Entry Criteria:
- Test plan is approved
- RTM is finalized
Exit Criteria:
- All test cases are reviewed and approved
- Test data is prepared
Detailed Explanation
In the Test Case Development phase, the QA team creates specific tests that will verify if the software meets its requirements. This includes writing manual test cases or developing automated testing scripts. The team also creates test data—dummy inputs that will be used during testing to simulate real-world scenarios. After crafting the test cases, they are subjected to a review process for completeness and coverage to ensure all aspects are tested.
Successful completion of this phase results in approved Test Cases & Test Scripts, alongside prepared Test Data. This phase starts once the Test Plan has been approved, and it concludes with all test cases being reviewed, approved, and test data being ready for execution.
Examples & Analogies
Think about baking a cake. You wouldn't just throw ingredients together randomly; you need a recipe (test cases) that outlines each step (activities) and specifies what you'll need (test data). Before you start baking, you check that you have everything and understand the process—it’s the same meticulous preparation that ensures a successful testing process.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account4. Test Environment Setup (Parallel Phase)
Objective: Prepare the hardware/software setup required for testing.
Activities:
- Configure test servers, databases, staging environments
- Install required tools (e.g., Selenium, JIRA, TestRail)
- Validate environment readiness (smoke test)
Deliverables:
- Environment Validation Report
- Access credentials and URLs
Entry Criteria:
- Environment requirements are known
- Hardware/software is available
Exit Criteria:
- Test environment is stable and accessible
Detailed Explanation
The Test Environment Setup phase involves preparing all the necessary hardware and software needed for testing. This includes configuring test servers, databases, and staging environments where the software will be tested. Key tools required for testing, such as Selenium for automated testing, are also installed during this phase. Finally, a 'smoke test'—a preliminary check to ensure the environment is ready for detailed testing—is conducted.
Deliverables from this phase include the Environment Validation Report and access credentials. It starts only when environment requirements are clear and available resources are in place, and ends when the environment is tested for stability and accessibility.
Examples & Analogies
Consider setting up a new classroom for students. You need to arrange the desks, install technology like projectors, and ensure everything is functioning before the students arrive. A 'dry run' might be similar to a smoke test where you check that all equipment works. Only when everything is set up and functioning well can the teaching (or in this case, testing) begin.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account5. Test Execution
Objective: Execute test cases and report any defects found.
Activities:
- Execute manual/automated tests
- Record actual results and compare with expected outcomes
- Log defects in tools like JIRA
- Retest after defect fixes
Deliverables:
- Test Execution Report
- Defect Report & Bug Tracker Updates
- Updated RTM
Entry Criteria:
- Test cases and test data are ready
- Test environment is up and running
Exit Criteria:
- All test cases executed
- All critical bugs are fixed or deferred with approval
Detailed Explanation
In the Test Execution phase, the actual testing of the software takes place. The previously developed test cases are executed, whether manually or via automated systems. As tests are executed, the results are recorded, and any defects or bugs found are logged in tracking tools like JIRA. After fixes are made for any defects, those tests are run again (retesting) to ensure that the issues have been resolved.
The deliverables from this phase consist of the Test Execution Report, Defect Report, and updates to the Requirements Traceability Matrix (RTM). This phase begins when all test cases and corresponding test data are ready and the test environment is operational, concluding once all tests are executed and critical bugs are addressed.
Examples & Analogies
Picture a team conducting a performance review. Each person has a checklist of criteria to evaluate their colleague (like executing test cases). They make notes about observations and areas needing improvement (logging defects). After feedback is provided, they might need to check if the areas needing improvement have been adequately addressed in follow-up meetings (retesting our solutions). This process ensures that everything important is scrutinized and corrected.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free account6. Test Cycle Closure
Objective: Formally close testing activities, assess metrics, and document learnings.
Activities:
- Ensure all test cases are executed and defects addressed
- Evaluate test coverage and quality metrics
- Conduct retrospective or post-mortem analysis
- Archive testware for reuse
Deliverables:
- Test Summary Report
- Lessons Learned Document
- Final RTM
Entry Criteria:
- Test execution is complete
- Defect status is resolved or accepted
Exit Criteria:
- All deliverables are submitted
- QA sign-off is obtained
Detailed Explanation
The Test Cycle Closure phase marks the conclusion of the testing process. It involves confirming that all test cases have been executed and any defects have been addressed satisfactorily. Metrics related to test coverage and overall quality are assessed to judge the testing efforts. A retrospective or post-mortem analysis is conducted to assess what worked well and what could be improved. Finally, all testing artifacts are archived for future use.
Deliverables from this phase include a Test Summary Report, a Lessons Learned Document, and a finalized Requirements Traceability Matrix (RTM). The phase begins after the test execution is complete and defects are settled and ends when all necessary documentation is submitted and the quality assurance team has provided their sign-off.
Examples & Analogies
Imagine finishing a big project, like organizing a community festival. Once the event is over, you gather the team to evaluate everything that went well and what could be improved (post-mortem analysis). You tally the attendance and satisfaction levels and create a report to capture your findings for future events (Test Summary Report and Lessons Learned Document). Just as in project management, closure in testing ensures that the effort is formally wrapped up and insights are captured for improvement.
Unlock the audio lesson
The script is above and free to read. A free account plays it back, in the voice you pick.
Create a free accountImportance of Entry & Exit Criteria
Entry Criteria: Set of conditions that must be met before a test phase can begin.
- ✅ Helps avoid incomplete or rushed testing.
Exit Criteria: Conditions that must be fulfilled before moving to the next phase or ending testing.
- ✅ Ensures quality control and formal handoff.
Example: You shouldn't begin test execution unless all test cases are reviewed and test data is available.
Detailed Explanation
Entry and exit criteria are critical components of the STLC that help maintain quality and structure throughout the testing process. Entry criteria specify the conditions that must be met to start a new testing phase, helping to prevent incompleteness or rushing into testing without proper preparation. Exit criteria define what has to be accomplished before concluding a phase or moving on to the next, ensuring that all necessary steps have been completed and that quality is maintained.
Examples & Analogies
Think of entry and exit criteria like the rules of a game. Before you can start playing (entry criteria), you must have all your players in place and understand the rules. Once the game is done, you have to ensure everyone understands the outcome before calling it quits (exit criteria). This helps everyone operate smoothly and ensures that no step is overlooked.
--
Key concepts
Core takeaways and short definitions to help you quickly recall the key ideas from this section.
- Requirement Analysis:
Understanding what needs to be tested and preparing for it.
- Test Planning:
Establishing the strategy, scope, and objectives for testing.
- Test Case Development:
Designing detailed tests based on requirements.
- Test Environment Setup:
Preparing the necessary infrastructure for testing.
- Test Execution:
Carrying out tests and logging any defects.
- Test Cycle Closure:
Finalizing testing activities and capturing lessons learned.
Examples
Step-by-step examples to apply the section's ideas and test your understanding.
Creating a Requirements Traceability Matrix (RTM) to map out how each testing requirement connects to specific test cases.
Implementing a Test Plan Document that outlines the tools, timelines, and team responsibilities for a testing project.
Memory aids
Imagine a detective gathering clues (requirements) before solving a mystery (conducting tests)—it's about understanding before action.
Use 'SEED' for Test Planning - Strategy, Estimation, Entry, Documentation to remember key focuses.
Flash Cards
Glossary
STLC
Software Testing Life Cycle - a series of phases followed by the QA team to ensure effective testing.
RTM
Requirements Traceability Matrix - a document that maps requirements to their corresponding test cases.
Test Plan
A document outlining the strategy, objectives, and scope of testing.
Test Case
A set of conditions and inputs to test a particular feature or functionality.
Defect
An error or flaw in a software application that causes it to produce incorrect or unexpected results.
Environment Validation Report
A report documenting the setup and readiness of the testing environment.