Software Testing

Software Testing Life Cycle phases:

Software testing has its own life cycle that intersects with every stage of the SDLC. The basic requirements in software testing life cycle are to deal with software testing methodologies like Manual, Automated and Performance testing. Let’s see each phase of STLC in details:

  1. Requirements Analysis

  2. Test Planning

  3. Test Case development

  4. Test environmental setup

  5. Test Execution

  6. Test Cycle closure

The Different stages in Software Test Life Cycle -

1. Requirements Analysis

Requirement Analysis is the very first step in Software Testing Life Cycle (STLC). In this phase Software testers studies the customer requirements from a testing point of view and work with developers during the design phase to see which requirements are testable and how they are going to test those requirements.If any conflict, missing or not understood any requirement, then the QA team may interact with 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.Automation feasibility for the given testing project is also done in this stage.

Activities

  • Analyze the types of tests to be performed.

  • Gather details about testing priorities and plan accordingly.

  • Identify test environment details where testing is supposed to be carried out.

  • Make out the list for what all Types of Tests performed like Functional, Security, and Performance etc.

  • Checkout the Automation feasibility if required & prepare the Automation feasibility report.

Deliverable

  • List of questions with all answers to be resolved from business i.e. testable requirements

  • .

    Automation feasibility report (if applicable)

2. Test Planning

This phase is also called Test Strategy phase.Test Planning is most important phase of Software testing life cycle where all testing strategy is defined. In this phase all the planning about testing is done like what needs to be tested, strategy of how the testing will be done, test strategy to be followed, the test environment, test methodologies will be followed, hardware and software availability, resources, risks etc. In test planning stage, QA manager will determine effort and cost estimates for the project and would prepare and finalize the Test Plan. Once test planning phase is completed the QA team can start with test cases development activity.

Activities

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

  • Test effort estimation and resource planning.

  • Test tool selection

  • Test effort estimation

  • Define the test environment required for entire project.Prepare the test schedules.

  • Define the control procedures.

  • Resource planning and determining roles and responsibilities.

  • List down the testing deliverable.

  • Define the entry criteria, suspension criteria, resumption criteria and exit criteria.

  • Define the risk involved if any.

Deliverables

  • Test plan/strategy document.

  • Effort estimation document.

3. Test Case Development

The test case development activity is started once the test planning activity is finished. This phase involves creation, verification and rework of test cases & test scripts where testing team write down the detailed test cases.Test Data is identified/created and is reviewed and then reworked as well.n this phase we need to dig deeper into project and figure out what testing needs to be carried out in each SDLC phase.Non functional testing areas (Stress and performance testing) are also analyzed and defined in this phase.The Requirement Traceability Matrix (RTM) is prepared. RTM is an format for tracking requirements where each test case is mapped with the requirement. Using this RTM we can track backward & forward traceability.

Activities

  • Create test cases and automation scripts

  • Review and baseline test cases and scripts

  • Create test data (If Test Environment is available)

Deliverables

  • Test cases/scripts

  • Test data

4. Test Environment Setup

Basically test environment decides the software and hardware conditions under which 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.This is independent activity and the test team is not involved in the process of setting up testing environment .Testing team could be prepare the smoke test cases to check the readiness of the test environment setup.

  • Understand the required environment set-up and prepare list for the Test Environment.

  • Setup test Environment and test data

  • Perform smoke test cases to check the readiness of the test environment.

 

Deliverables

  • Environment ready with test data set up

Smoke Test cases results.

5. Test Execution

In test execution phase the phase test team will carry out the testing based on the prepared test plans and the test cases.If any test case is failed then bugs can be reported to the development team via bug tracking system. Ideally every failed test case should be associated with at least single bug.Bug can be linked for corresponding test case for further analysis. Using this linking we can get the failed test case with bug associated with it. Once the test case fixed by development team then same test case can be executed based on your test planning.

Activities

  • Execute tests cases as per test plan

  • Marked document test results, and log defects for failed cases

  • Do Retesting once the defects are fixed.

  • Track the defects to closure

Deliverables

  • Completed RTM with execution status

  • Test cases execution repor

  • Defect reports

 

6. Test Cycle Closure

Testing team must discuss and analyze cycle completion criteria based on Test coverage, Quality, Cost, Time, and Software and 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.Once complete the test cycle then test closure report & Test metrics will be prepared.

Activities

  • Evaluate cycle completion criteria based on Time,Test coverage,Cost,Software,Critical Business Objectives , Quality

  • Prepare test metrics based on the above parameters.

  • 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 metric

Leave a Reply