Basics of Software Testing Life Cycle
Tags: testing, qualityassurance
Published: 2021-02-09 14:35:37


The major steps of Software Testing Life Cycle are Requirement Analysis, Test Planning, Test Case Development, Test Environment Setup, Test Execution and Test Reporting.
 ![image](https://dev-to-uploads.s3.amazonaws.com/i/tb9zo401c7htxkmylacl.png)
 
The first phase of the Software Testing Life Cycle is Requirement Analysis. During this stage QA team can do research on project requirements from a testing point of view. Through that test team can identify the testing requirements in both Functional and Non-Functional. For a better understanding in the requirements QA team should have to interact with Business Analysts, Client service team, Architects and Technical Leads. In this phase main deliverables are Automation Feasibility report, Requirement Traceability Matrix(RTM).
The second phase of Software Testing Life Cycle is Test Planning. This is an important stage in Software Testing Life Cycle. Mainly QA leads will determine testing effort and cost estimation. At the same time they will prepare the final Test plan and Test strategy documents. Test Plan document and Test Strategy document are the main deliverables. In addition, testing tools to be used, best testing approach to test, number of resources and skills required are other outcomes. 
The third phase is Test Case Development in Software Testing Life Cycle. At this point QA team start test case writing. According to the requirements they write testing scripts for automation. Peer reviews are done for verification of both  test scripts and cases. If the test environment is available, test data is also created in this phase. In connection with these activities the main deliverables of this phase are Test cases, Test Scripts(For test automation ) and Test data.
Test Environment Setup is the fourth phase of Software Testing Life Cycle.  Test environment setup can be done parallel to the  third phase of the testing life cycle. According to the requirement document required Hardware and Software is prepared for testing. After the installation of the required software and hardware smoke testing can be conducted. The main outcomes of this phase are Testing Environment and  Test  Result of smoke testing.
The fifth phase of Testing Life Cycle is test execution. Quality Assurance engineers conduct the testing according to their pre-planned testing plans and prepared test cases. In the test execution phase test cases are executed in the testing environment. Testers will identify the issues and report bugs to the development team for corrections and for improvement. Reported fixed bugs are retested by the QA engineer. Along with the activities mentioned the main deliverables of test execution phase are updated test cases with results, test execution report and bug report.
The final phase of Testing Life Cycle is Test Cycle Closure. Before starting this phase test Execution should be completed. Under this phase QA team will discuss the testing artifacts. Further, they discuss the weak points they faced during the testing phase. Test results are analyzed during this phase. Documentation is also conducted under this phase. The main outcome of this phase is Report of Test Closure.