What is Software Testing Life Cycle (STLC)?


Software Testing Life Cycle (STLC) is defined as a sequence of activities which are used to perform Software Testing. Basically, it is a testing process which is executed in systematic and planned manner. In this different activities are carried out to improve the quality of the product.
STLC consist of the following phases:-

Requirement Analysis
Test Planning
Test Case Development
Test Environment Set up
Test Execution
Test Execution Report
Test Cycle Closure

1. Requirement Analysis:-

Requirement Analysis is the very first step in Software Testing Life Cycle (STLC). In this step Quality Assurance (QA) team understands the requirement in terms of what we will testing & figure out the testable requirements.

Basically, in this phase, activities performed by QA Team are-

  1. QA Team will identify the type of test to be performed.
  2. QA Team will Identify test environment details where testing is supposed to be carried out.
  3. QA Team will gather details about testing priorities and focus.

The QA team may interact with various stakeholders (Client, Business Analyst, Technical Leads, System Architects etc) to understand the requirements in detail. The requirements can be either Functional or Non-Functional like Performance, Security testing.

2. Test Planning:-

Test Planning is that phase of Software testing life cycle where all testing strategy is defined. It 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. Based on the requirement analysis, start preparing the Test Plan. Once test planning phase is completed the QA team can start with test cases development activity.

Basically, in this phase activities, performed by QA Team are-

  1. QA Team will select the Test tool.
  2. QA Team will check the effort estimation
  3. QA Team will prepare test plan/strategy document for various types of testing
  4. Resource planning and determining roles and responsibilities will be defined by QA.

3. Test Case Development:-

This phase involves creation, verification and rework of test cases & test scripts. 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 completed then these test cases are reviewed by QA lead.

Basically, in this phase, activities performed by QA Team are-

  1. Creation of test cases.
  2. Review test cases and scripts.
  3. Create of test data.

4. Test Environment Set up:-

Setting up the test environment is an important part of the STLC. Basically, test environment decides on which conditions software is tested Test environment set-up is one of the critical aspects of the testing process and can be done in parallel with Test Case Development Phase. 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 test.

Basically, in this phase, activities performed by QA Team are-

  1. Environment set-up and hardware and software requirement list for the Test Environment is prepared.
  2. Set up of Test Environment is done either by developer, customer or tester itself
  3. QA will perform the smoke test on the build.

5. Test Execution:-

Once the preparation of Test Case Development and Test Environment setup is completed then test execution phase be started. In this phase testing team start the executing test cases based on prepared test planning i.e. Testers will carry out the testing based on the test plans and the test cases prepared.

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 to the corresponding test case for further analysis. Ideally, every failed test case should be associated with at least single bug. Once the defects are fixed, same Failed or Blocked test cases can be executed again to retest the functionality

Basically, in this phase, activities performed by QA Team are-

  1. According to plan tests will be executed.
  2. Failed test cases will be assigned to developers.
  3. Retest the fixed defects.

6. Test Execution Report:-

Test summary report is a document which contains the summary of test activities and final test results.Basically in this various reports for various stakeholder and other managers is prepared. This report will have a detailed information about the assigned bugs, open bugs, closed bugs etc.

Basically, in this phase, activities performed by QA Team are-

  1. A report is made so that there will be transparency in the QA team work.

7. Test Cycle Closure:-

The testing team member will call a 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 improved & taking the lessons from current STLC as input to upcoming test cycles. 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

Basically, in this phase, activities performed by QA Team are-

  1. Evaluate cycle completion criteria based on Time, Test coverage, Cost, Software, Critical Business Objectives, Quality.
  2. Prepare Test closure report.
  3. Qualitative and quantitative reporting of quality of the work product to the customer.
  4. Test result analysis to find out the defect distribution by type and severity.

We hope this post is helpful for you.

If your friend also wants to know about this post Please share with them, so they will also get to know about the same. If you have any question or query please let us know by sending a comment below.Kindly don’t forget to follow us on Facebook and Twitter and Subscribe to YouTube Channel for latest upcoming software testing videos.