What is Software Testing Life Cycle (STLC) and STLC Process With Diagram

Share

Software Testing Life Cycle (STLC)

Software Testing Life Cycle is a testing process which is executed in a sequence, in order to improve the quality of the product. It is defining the steps/ stages/ phases in a testing of software.  It takes a sequence of steps that are carried out in order to validate the software. There are different phases in STLC which are given below:

  1. Requirement analysis

  2. Test Planning

  3. Test case development

  4. Environment Setup

  5. Test Execution

  6. Test Cycle Closure

Requirement analysis

This is a very first phase of the software testing life-cycle, in this stage, the Testing or Quality Assurance team decides what needs to be tested. By studying the requirements, the testing teams gets an understanding of the scope of testing. This phase might involve conversations with developers, designers, and stakeholders.

There are two main kinds of testing – functional and non-functional. Functional testing includes tests to evaluate how the software is working.  Non-functional testing includes features that are behind-the-scenes such as performance and security.

Activities of Requirement analysis

  • Categorizing the testing methods and testing types

  • Gather details about testing priorities and focus.

  • Preparation of RTM that is Requirement Traceability Matrix

  • Identify the testing environment where actual testing will be done

  • Automation feasibility analysis (if required).

  • Analyzing the System Requirement specifications from the testing point of view

  • Analyzing the Automation feasibility

Outcomes of Requirement analysis

  • RTM (Requirement Traceability Matrix).

  • Automation feasibility report.

Test Planning

This phase is also called Test Strategy phase. What to test, how the test needs to be done, and who’s going to test it… these are the things resolute during the test planning phase. A test plan documents are created during this phase.

Activities of Test Planning

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

  • Estimation of testing effort

  • Selection of Testing Method and Tool

  • Resource planning and defining roles and responsibility to them

  • Training requirement

Outcomes of Requirement analysis

  • Effort estimation document.

  • Test Plan and Strategy document.

  • Best suitable Testing Approach

  • Number of Resources, skill required and their roles and responsibilities

  • Testing tool to be used

Test Case Development

One of the important stages of the Software Testing Life Cycle is Test Case developing. This includes writing out a step-by-step procedure on how the test should be executed, the expected results, the actual results, and if the test was a pass or a fail.

Activities of Test Planning

  • QA team write test cases and scripts for automation

  • Review and baseline test cases and scripts

  • Verification of test cases and automation scripts

  • Creation of Test Data in testing environment

Outcomes of Test Planning

Test Environment Setup

This phase includes the setup or installation process of software and hardware which is required for testing the application. This can be done in parallel with Test Case Development Stage.

Once the installation of the build is successful and complete then the Test Data is generated. After the creation of Test data, the Smoke testing is executed on the build in order to check whether the basic functionalities are working good or not.

Activities of Test Environment Setup

  • Understand the required architecture for environment set-up

  • Prepare hardware and software requirement list for the Test Environment.

  • Setting up test Environment and creation of test data

  • Perform smoke test on the build

Outcomes of Test Environment Setup

Test Execution

Once the preparation of Test Case Development and Test Environment setup is completed then test execution phase can be started. 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 of Test Execution

  • Execute Test Cases

  • Reporting test results, and log defects for failed cases

  • Verification and retesting of the defect

  • Track the defects to closure

Outcomes of Test Environment Setup

  • Completed RTM with execution status

  • Updated test cases with results

  • Defect/Bug reports

Test Cycle Closure

In this Phase QA 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 blocks for future test cycles and share best practices for any similar projects in future.

Activities of Test Cycle Closure

  • To evaluate the test completion and prepare test metrics on the basis of Time, Test coverage, Cost, Software, Critical Business Objectives, and Quality

  • Documentation of the learning from the project

  • Test result analysis to find out the defect distribution by type and severity.

  • Test closure report

Outcomes of Test Cycle Closure

  • Test Closure report and Metrics

 

“Related post”

Software Development life cycle

Software Testing Life Cycle

Test Case Documentation

Alpha and Beta Testing

Regression Testing

Smoke and Sanity Testing

Software Testing

Validation and Verification

V-Model

Entry and Exit Criteria in software testing

Integration Testing 

Automation Testing

 

Leave a Reply

Your email address will not be published. Required fields are marked *