Wednesday, August 14, 2019

Software Testing Life Cycle - STLC


STLC is the process, which consists of entire testing activities. A test life cycle contains the following steps:

1. Requirements Study
2. Test Strategy
3. Test Plan Preparation
4. Test Case Design
5. Test Execution
6. Defect Reporting
7. Release to production


1. Requirements Study:


The testing process begins by first understanding the requirements. The requirements are normally divided into modules. The tester should understand the entire functionality that is proposed in the document by reading it thoroughly.

It is natural for a tester at this point to get confused on the total flow and functionality. In order to overcome these, it is advisable for the tester to read the document multiple times, seeking clarifications then and there until clarity is achieved.

Here, requirements / business of the application is studied by referring the SRS / Use Case  / Business Requirements / Functional Requirements / Design documents etc.   
    
Roles & Responsibilities:

Roles
Responsibilities
QA Analysts/Test Lead


1.Assign the requirements to tester
2. Raises issues on the requirements against the onsite dev/off shore dev.
3. Arranging meetings for the QA team
4. Arranges K.T sessions to share business/domain knowledge with the team members 
5. Reviews the documents which are sent by test team
Test Engineers
1. Analyzes the requirements and raises the issues and communicate with TL
2. Attending the meetings which are conducted by TL
3. Prepares the test objectives for the requirements 
4. Updates the test objectives based on the review comments



2. Test Strategy:

The first stage is the formulation of a test strategy. A test strategy is a statement of the overall approach to testing, identifying what levels of testing are to be applied and the methods, techniques and tools to be used. A test strategy should ideally be organization wide, being applicable to all of an organizations software developments.

Developing a test strategy which efficiently meets the needs of an organization is critical to the success of software development within the organization. This document is prepared by QA analyst / Test Manager. By using the Test strategy, Test lead prepares test plan.

Deliverable: Test Strategy Document


Roles & Responsibilities:

Roles
Responsibilities
QA Analysts/Test Lead


1. Prepares the QA strategy document and send this to offshore and onsite TM for review
2. Modifies the QA strategy document based on the review comments
TM (Test Manager)
1. Review the QA strategy document and raises the issues

3. Test Plan Preparation:
A Test Plan is a detailed project plan for testing, covering the scope of testing, the methodology to be used, the tasks to be performed, resources, schedules, risks, and dependencies. A Test Plan is developed prior to the implementation of a project to provide a well defined and understood project road-map.

Roles & Responsibilities:

Roles
Responsibilities
QA Analysts/Test Lead

1.  Prepares the test plan document
2. Updates the test plan document in SVN

Deliverable: Test Plan Document
                                              

4. Test Case Design:
A document that describes set of actions, events done by test engineers. Also contain Expected and actual outcome of the test.

Tests cases can be designed by two approaches:
  • By knowing the Functions / Requirements(Black Box Approach)
  • By knowing the internal implementations(White Box Approach)

Baseline documents to designing the test cases are SRS(Software Requirement Specification) and Use-case documents.Once the test cases are written, they are reviewed by peer associate, then it is reviewed and approved by the Test Lead.Test cases are written in a standard test case template

Deliverable: Approved Test Case Document

Test Case Design Checklist:
1. Is the latest BFR referred for writing test case(s)?
2. Are the latest supporting documents (if any) referred for writing test case(s)?
3. Are the test case(s) written as per the BFR under scope?
4. Is there at least one test case to represent one BFR under scope?
5. Does the test case(s) address all the sections / conditions for a BFR under scope?
6. Does the test case contain input/output data wherever applicable?
7. Does the test case capture pre-conditions and post-conditions wherever applicable?
8. Are both the negative and positive scenarios captured in the test cases wherever applicable?
9. Does the test case follows a standard naming convention?
10. Are the test case(s) free from grammatical and spelling mistakes?
11. Are all the required steps covered in the test case(s)?
12. Are the words / sentences in the test case(s) phrased properly?

Roles & Responsibilities:
Roles
Responsibilities
QA Analysts/Test Lead


1. Review and freeze the Test Script Review Checklist and                 upload to test management tool
2. Ensure that all the test engineers are following the standards for writing test scripts
3. Reviews the test cases and raises the LEDs
4. Approves the test cases
Test Engineers


1. Writing the test scripts scripts in the Specified Test
    script template for the approved Test objectives.
2. Name the test scripts as per the agreed upon naming
Convention
3. Updates the test script in to configuration
management tool
4. Modifies the test cases based on the review
comments

5. Test Execution:
After the build is ready test engineer will validate/Execute the test cases which are developed previously. Testers will use their own test data and in some cases client will be providing the test data.
Execution and execution results plays a vital role in the testing. Each and every activity should have proof.
Test Log Document contains the status of the test case (i.e. Pass or fail information about the test cases are recorded in the test log).

Deliverable: Test Execution Report Document

Roles & Responsibilities:

Roles
Responsibilities
QA Analysts/Test Lead


1. Assigns the test cases for the test engineer for the execution
2. Checks whether the build is ready for testing and if there is any issue with the build then they will report the issue to the onsite/offshore TM
3. Validating the bugs

Test Engineers


1. Test Engineers will go through the test cases and
clarify their doubts if any before starting the
execution
2. Executing the assigned test cases
3. Finding and reporting the bugs

6. Defect Reporting:
Once the bug is found then bug should go through the life cycle to be closed.   
Bug tracking tool is used that keeps track of all the defects raised. Every defect that is found during testing should be logged in a defect log. The defect log can be used to track and close the defect.

Deliverable: Defect Report Document

Roles & Responsibilities:

Roles
Responsibilities
QA Analysts/Test Lead


1. Reviews the bugs assigned by test engineers
2. Assigns the bugs to developer
3. Rejects the invalid bugs raised by test engineer
4. Prepares defect report
Test Engineers

1. Assigns bugs to the TL
2. Re-tests the rejected bugs  

7. Release to production:
Once all the bugs are fixed, another release is given to QA with the modified changes for regression testing. Once the QA team assures the software then that software is released to production. 

1 comment:

  1. Great Article… I love to read your QA services articles because your writing style is too good, its is very helpful for all of us and I never get bored while reading your article because, they are becomes a more and more interesting from the starting lines until the end.

    ReplyDelete

If any suggestions or issue, please provide