It takes many different activities to make up a software testing project. Software testing typically isn’t as simple as “lets see if it works”. It takes a sequence of steps that are carried out in order to validate the software. These steps or phases are what make up the Software Testing Life Cycle (STLC).
What phases make up the software testing life cycle?
Phases of the software testing life cycle may vary, but in general, they involve planning, preparing, conducting, and reporting. Let’s take a closer look at different parts of the software testing life cycle.
1. Requirements Analysis
In this first phase of the software testing life cycle, the test team reviews any requirements documents and designs to determine what is testable. By studying the requirements, the testing team gets an understanding of the scope of testing. This phase might involve conversations with developers, designers, and stakeholders.
2. Test Planning
What to test, how the test needs to be done, and who’s going to test it… these are the things determined during the test planning phase. Once the requirements have been reviewed, it’s time to plan the testing project at a high level. A test plan document is created at this point. This phase gets everyone on the same page, as far as how the testing project will be approached.
3. Test Case Development
The goal of this phase is to determine in detail “how” to test. Test cases should be written to guide the tester through each test. If old test cases are being used, make sure they are up to date. A number of tests might require test data, so prepare to run tests with the necessary data during this phase so you don’t have to spend time doing this during the tests.
The test environment is the configuration of software and/or hardware on which the testing team is to perform the tests, but if the environment has not been prepared in time for when you’re ready to start, you’re going to hit roadblocks. Make sure any necessary test data has been entered into the system and is ready to be used. Commonly, this phase takes place alongside the test case development phase.
5. Test Execution
Now that the tests are ready to go and the environment is setup, it’s time to run the tests. Using the test cases, the tester executes each test, comparing the expected results to the actual results of each test and marking it as pass/fail/skip. If the test fails, the tester should document what actually happened during the test. This phase also involves the tester logging bugs in the designated bug tracking system (determined in the test plan phase).
6. Test Reporting
Once all the tests cases have been run, the test manager should confirm all required testing has been completed. This involves an analysis of defects found, and other metrics such as how many passed/failed/skipped test cases. This final phase in the software testing life cycle might also include a retrospective on the testing project/process. This allows the team to learn and improve for future testing projects.
In general, the software testing life cycle involves the planning, preparing, conducting, and reporting of tests. Some of the phases in the STLC are dependent on other phases, while some can take place simultaneously. By understanding each phase in the STLC, you can ensure an efficient and effective testing process.