Software Testing Life Cycle (STLC) is the testing
process which is executed in systematic and planned manner. In entire STLC
process, Anblicks QA team will perform different activities, are
carried out to improve the quality of the product.
Following
steps are involved in Software Testing Life Cycle (STLC).
Each Phase
is having its own Entry Criteria and deliverable.
- Requirement Analysis
- Test Planning
- Test Case Development
- Test Environment Setup
- Test Execution
- Test Cycle Closure
Ideally,
the next phase is based on previous phase or we can say next phase cannot be
started unless and until previous phase is completed. It is possible in the
ideal situation, but practically it is not always true.
Requirement
Analysis is the very first step in Software Testing Life Cycle (STLC). In this Phase
Quality Assurance (QA) team understands the requirement in terms of what we
will testing & figure out the testable requirements. If any conflict,
missing or not understood any requirement, then QA team follow up with the
various stakeholders like Business Analyst, System Architecture, Client,
Technical Manager/Lead etc to better understand the detail knowledge of
requirement.
From very
first step QA involved in the where STLC which helps to prevent the introducing
defects into Software under test. The requirements can be either Functional or
Non-Functional like Performance, Security testing. Also requirement and
Automation feasibility of the project can be done in this stage (if applicable).
Entry Criteria
|
Activities
|
Deliverable
|
Following documents
should be available.
1. Requirements Specification.
2. Application architectural
Along with above documents Acceptance criteria should be well
defined.
|
1.
Prepare
the list of questions or queries and get resolved from Business Analyst,
System Architecture, Client, Technical Manager/Lead etc.
2. Make out the list for what all Types of Tests
performed like Functional, Security, and Performance etc.
3. Define the testing focus and priorities.
4. List down the Test environment details where
testing activities will be carried out.
5. Checkout the Automation feasibility if
required & prepare the Automation feasibility report.
|
1.
List of
questions with all answers to be resolved from business i.e. testable
requirements.
2. Automation feasibility report (if applicable)
|
Test
Planning is most important phase of Software testing life cycle where all
testing strategy is defined. This phase also called as Test Strategy phase. In
this phase typically Test Manager (or Test Lead based on company to company)
involved to determine the effort and cost estimates for entire project. This
phase will be kicked off once the requirement gathering phase is completed
& based on the requirement analysis, start preparing the Test Plan. The
Result of Test Planning phase will be Test Plan or Test strategy & Testing Effort
estimation documents.
Once test planning phase is completed the QA team can start with test cases
development activity.
Entry Criteria
|
Activities
|
Deliverable
|
1.
Requirements
Documents (Updated version of unclear or missing requirement).
2. Automation feasibility report.
|
1.
Define
Objective & scope of the project.
2. List down the testing types involved in the
STLC.
3. Test effort estimation and resource planning.
4. Selection of testing tool if required.
5. Define the testing process overview.
6. Define the test environment required for
entire project.
7. Prepare the test schedules.
8. Define the control procedures.
9. Determining roles and responsibilities.
10. List down the testing deliverable.
11. Define the entry criteria, suspension criteria,
resumption criteria and exit criteria.
12. Define the risk involved if any.
|
1.
Test
Plan or Test strategy
document.
2. Testing Effort
estimation
document.
|
The test
case development activity is started once the test planning activity is
finished. This is the phase of STLC where testing team write down the detailed
test cases. Along with test cases testing team also prepare the test data if
any required for testing. Once the test cases are ready then these test cases
are reviewed by peer members or QA lead.
Also the
Requirement Traceability Matrix (RTM) is prepared. The Requirement Traceability
Matrix is an industry-accepted format for tracking requirements where each test
case is mapped with the requirement. Using this RTM we can track backward &
forward traceability.
Entry Criteria
|
Activities
|
Deliverable
|
1.
Requirements
Documents (Updated version of unclear or missing requirement).
2. Automation feasibility report.
|
1.
Preparation
of test cases.
2. Preparation of test automation scripts (if
required).
3. Re-requisite test data preparation for
executing test cases.
|
1.
Test
cases.
2. Test data.
3. Test Automation Scripts (if required).
|
Setting
up the test environment is vital part of the STLC. Basically test environment
decides on which conditions software is tested. This is independent activity
and can be started parallel with Test Case Development. In process of setting
up testing environment test team is not involved in it. Based on company to
company may be developer or customer creates the testing environment. Mean
while testing team should prepare the smoke test cases to check the readiness
of the test environment setup.
Entry Criteria
|
Activities
|
Deliverable
|
1.
Test
Plan is available.
2. Smoke Test cases are available.
3. Test data is available.
|
1.
Analyze
the requirements and prepare the list of Software & hardware required to
set up test environment.
2. Setup the test environment.
3. Once the Test Environment is setup execute the
Smoke test cases to check the readiness of the test environment.
|
1. Test Environment will be ready with test data.
2. Result of Smoke Test cases.
|
Once the
preparation of Test Case Development and Test Environment setup is completed
then test execution phase can be kicked off. In this phase testing team start
executing test cases based on prepared test planning & prepared test cases
in the prior step.
Once the
test case is passed then same can be marked as Passed. If any test case is
failed then corresponding defect can be reported to developer team via bug
tracking system & bug can be linked for corresponding test case for further
analysis. Ideally every failed test case should be associated with at least
single bug. Using this linking we can get the failed test case with bug
associated with it. Once the bug fixed by development team then same test case
can be executed based on your test planning.
If any of
the test cases are blocked due to any defect then such test cases can be marked
as Blocked, so we can get the report based on how many test cases passed,
failed, blocked or not run etc. Once the defects are fixed, same Failed or Blocked
test cases can be executed again to retest the functionality.
Entry
Criteria
|
Activities
|
Deliverable
|
1. Test Plan or Test
strategy document.
2. Test
cases.
3. Test
data.
|
1.
Based
on test planning execute the test cases.
2. Mark status of test cases like Passed, Failed,
Blocked, Not Run etc.
3. Assign Bug Id for all Failed and Blocked test
cases.
4. Do Retesting once the defects are fixed.
5. Track the defects to closure.
|
1.
Test
case execution report.
2. Defect report.
|
Call out
the testing team member meeting & evaluate cycle completion criteria based
on Test coverage, Quality, Cost, Time, Critical Business Objectives, and
Software. Discuss what all went good, which area needs to be improve &
taking the lessons from current STLC as input to upcoming test cycles, which
will help to improve bottleneck in the STLC process. Test case & bug report
will analyze to find out the defect distribution by type and severity. Once
complete the test cycle then test closure report & Test metrics will be
prepared. Test result analysis to find out the defect distribution by type and
severity.
Entry Criteria
|
Activities
|
Deliverable
|
1.
Test
case execution is completed.
2. Test case Execution report.
3. Defect report.
|
1.
Evaluate
cycle completion criteria based on Test coverage, Quality, Cost, Time,
Critical Business Objectives, and Software Prepare test metrics based on the
above parameters.
2. Prepare Test closure report.
3. Share best practices for any similar projects
in future.
|
1.
Test
Closure report
2. Test metrics
|






Great Article… I love to read your QA services articles because your writing style is too good, its is very helpful for all of us and I never get bored while reading your article because, they are becomes a more and more interesting from the starting lines until the end.
ReplyDeleteThis post is so useful and informative. Keep updating with more information.....
ReplyDeleteSwift Training In Bangalore
Swift Developer Training In Bangalore