Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Tutorial 28 - Software Testing Life Cycle - STLC Explained

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

Software Testing Life Cycle STLC

Contrary to popular belief, Software Testing is not a just a single activity. It consists of series
of activities carried out methodologically to help certify your software product. These activities
(stages) constitute the Software Testing Life Cycle (STLC).

The different stages in Software Test Life Cycle -

Each of these stages have a definite Entry and Exit criteria , Activities & Deliverables associated
with it.
In an Ideal world you will not enter the next stage until the exit criteria for the previous stage is
met. But practically this is not always possible. So for this tutorial , we will focus of activities
and deliverables for the different stages in STLC. Lets look into them in detail.

Requirement Analysis
During this phase, test team studies the requirements from a testing point of view to identify the
testable requirements. The QA team may interact with various stakeholders (Client, Business
Analyst, Technical Leads, System Architects etc) to understand the requirements in detail.
Requirements could be either Functional (defining what the software must do) or Non Functional

(defining system performance /security availability ) .Automation feasibility for the given testing
project is also done in this stage.

Activities

Identify types of tests to be performed.


Gather details about testing priorities and focus.
Prepare Requirement Traceability Matrix (RTM).
Identify test environment details where testing is supposed to be carried out.
Automation feasibility analysis (if required).

Deliverables

RTM
Automation feasibility report. (if applicable)

Test Planning
This phase is also called Test Strategy phase. Typically , in this stage, a Senior QA manager
will determine effort and cost estimates for the project and would prepare and finalize the Test
Plan.

Activities

Preparation of test plan/strategy document for various types of testing


Test tool selection
Test effort estimation
Resource planning and determining roles and responsibilities.
Training requirement

Deliverables

Test plan /strategy document.


Effort estimation document.

Test Case Development


This phase involves creation, verification and rework of test cases & test scripts. Test data , is

identified/created and is reviewed and then reworked as well.

Activities

Create test cases, automation scripts (if applicable)


Review and baseline test cases and scripts
Create test data (If Test Environment is available)

Deliverables

Test cases/scripts
Test data

Test Environment Setup


Test environment decides the software and hardware conditions under which a work product is
tested. Test environment set-up is one of the critical aspects of testing process and can be done
in parallel with Test Case Development Stage. Test team may not be involved in this activity if
the customer/development team provides the test environment in which case the test team is
required to do a readiness check (smoke testing) of the given environment.

Activities

Understand the required architecture, environment set-up and prepare hardware and
software requirement list for the Test Environment.
Setup test Environment and test data
Perform smoke test on the build

Deliverables

Environment ready with test data set up


Smoke Test Results.

Test Execution
During this phase test team will carry out the testing based on the test plans and the test cases
prepared. Bugs will be reported back to the development team for correction and retesting will be
performed.

Activities

Execute tests as per plan


Document test results, and log defects for failed cases
Map defects to test cases in RTM
Retest the defect fixes
Track the defects to closure

Deliverables

Completed RTM with execution status


Test cases updated with results
Defect reports

Test Cycle Closure


Testing team will meet , discuss and analyze testing artifacts to identify strategies that have to be
implemented in future, taking lessons from the current test cycle. The idea is to remove the
process bottlenecks for future test cycles and share best practices for any similar projects in
future.

Activities

Evaluate cycle completion criteria based on Time,Test coverage,Cost,Software,Critical


Business Objectives , Quality
Prepare test metrics based on the above parameters.
Document the learning out of the project
Prepare Test closure report
Qualitative and quantitative reporting of quality of the work product to the customer.
Test result analysis to find out the defect distribution by type and severity.

Deliverables

Test Closure report


Test metrics

Finally, summary of STLC along with Entry and Exit Criteria

STLC Stage
Entry Criteria
Requirement Requirements
Analysis
Document available
(both functional and
non functional)
Acceptance criteria
defined.

Activity
Analyse business functionality to
know the business modules and
module specific functionalities.
Identify all transactions in the
modules.
Identify all the user profiles.

Exit Criteria
Signed off RTM

Deliverables
RTM

Test automation
feasibility report
signed off by the
client

Automation
feasibility report
(if applicable)

Application
Gather user interface/authentication,
architectural document geographic spread requirements.
available.
Identify types of tests to be
performed.
Gather details about testing priorities
and focus.
Prepare Requirement Traceability
Matrix (RTM).
Identify test environment details
where testing is supposed to be
carried out.

Test Planning Requirements


Documents
Requirement
Traceability matrix.
Test automation
feasibility document.

Automation feasibility analysis (if


required).
Analyze various testing approaches Approved test
available
plan/strategy
document.
Finalize on the best suited approach
Effort estimation
document signed
Preparation of test plan/strategy
document for various types of testing off.

Test
plan/strategy
document.

Effort estimation
document.

Test tool selection


Test effort estimation

Test case
Requirements
development

Resource planning and determining


roles and responsibilities.
Create test cases, automation scripts Reviewed and
signed test

Test

Documents

(where applicable)

Cases/scripts

cases/scripts

RTM and test plan

Review and baseline test cases and


scripts

Reviewed and
signed test data

Test data

Automation analysis
report
Create test data
Test
System Design and
Understand the required architecture, Environment setup Environment
Environment architecture documents environment set-up
is working as per ready with test
setup
are available
the plan and
data set up
checklist
Prepare hardware and software
Environment set-up
requirement list
Smoke Test
plan is available
Test data setup is Results.
Finalize connectivity requirements complete
Prepare environment setup checklist Smoke test is
successful
Setup test Environment and test data
Perform smoke test on the build

Test
Execution

Accept/reject the build depending on


smoke test result
Baselined RTM, Test Execute tests as per plan
All tests planned Completed RTM
Plan , Test case/scripts
are executed
with execution
are available
status
Document test results, and log
defects for failed cases
Defects logged and
Test environment is
tracked to closure Test cases
ready
updated with
Update test plans/test cases, if
results
necessary
Test data set up is done
Defect reports
Map defects to test cases in RTM
Unit/Integration test
report for the build to Retest the defect fixes
be tested is available
Regression testing of application
Track the defects to closure

Test Cycle
closure

Testing has been


completed
Test results are
available

Evaluate cycle completion criteria


based on - Time, Test coverage ,
Cost , Software Quality , Critical
Business Objectives
Prepare test metrics based on the

Test Closure report Test Closure


signed off by
report
client
Test metrics

Defect logs are


available

above parameters.
Document the learning out of the
project
Prepare Test closure report
Qualitative and quantitative reporting
of quality of the work product to the
customer.
Test result analysis to find out the
defect distribution by type and
severity
Back to Software Testing Index Page

You might also like