Search here

Pages

Software Testing Life Cycle (STLC)



Software Testing Life Cycle (STLC)

Software Testing Life Cycle (STLC) defines the steps/stages/phases in testing of software. 

The different stages in Software Testing Life Cycle:


  1. Requirement Analysis
  2. Test Planning
  3. Test Case Design / Development
  4. Environment setup
  5. Test Execution / Reporting / Defect Tracking
  6. Test Cycle Closure / Retrospective study

Software_Testing_Life_Cycle

1) 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
  1. Identify types of tests to be performed. 
  2. Gather details about testing priorities and focus.
  3. Prepare Requirement Traceability Matrix (RTM).
  4. Identify test environment details where testing is supposed to be carried out. 
  5. Automation feasibility analysis (if required).

Deliverables 
  1. RTM
  2. Automation feasibility report. (if applicable)

2) 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
  1. Preparation of test plan/strategy document for various types of testing
  2. Test tool selection 
  3. Test effort estimation 
  4. Resource planning and determining roles and responsibilities.
  5. Training requirement

Deliverables 
  1. Test plan /strategy document.
  2. Effort estimation document.

3) Test Case Design / 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
  1. Create test cases, automation scripts (if applicable)
  2. Review and baseline test cases and scripts 
  3. Create test data (If Test Environment is available)

Deliverables 
  1. Test cases/scripts 
  2. Test data

4) 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 
  1. Understand the required architecture, environment set-up and prepare hardware and software requirement list for the Test Environment. 
  2. Setup test Environment and test data 
  3. Perform smoke test on the build

Deliverables 
  1. Environment ready with test data set up 
  2. Smoke Test Results.

5) Test Execution / Reporting / Defect Tracking

 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 
  1. Execute tests as per plan
  2. Document test results, and log defects for failed cases 
  3. Map defects to test cases in RTM 
  4. Retest the defect fixes 
  5. Track the defects to closure

Deliverables 
  1. Completed RTM with execution status 
  2. Test cases updated with results 
  3. Defect reports

6) Test Cycle Closure / Retrospective study

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
  1. Evaluate cycle completion criteria based on Time,Test coverage,Cost,Software,Critical Business Objectives , Quality
  2. Prepare test metrics based on the above parameters. 
  3. Document the learning out of the project 
  4. Prepare Test closure report 
  5. Qualitative and quantitative reporting of quality of the work product to the customer. 
  6. Test result analysis to find out the defect distribution by type and severity.

Deliverables 
  1. Test Closure report 
  2. Test metrics

4 comments :

  1. Thanks for all your information.Website is very nice and informative content.

    Software Estimation Techniques Training in Chennai

    ReplyDelete

  2. It is really a great work and the way in which u r sharing the knowledge is excellent.
    Thanks for helping me to understand basic concepts. As a beginner in software testing your post help me a lot.Thanks for your informative article. software testing Training | software testing Training in chennai

    ReplyDelete
  3. Looking for best selenium training in Chennai, Credo Systemz is the no 1 selenium Training institute in Chennai offering professional selenium course by selenium experts.

    ReplyDelete

Share your feedback and queries here. Your feedback are more valuable to us!