Before starting the Test execution, the readiness of Test cases should be always reviewed. Test cases should cover all the test scenarios and requirements. Also, it should be considered that all kinds of test cases should be covered Functional Test cases, User Interface Test cases
There are mainly three circumstances after which test cases can be executed:
- Fulfillment of Entry Criteria
- Readiness of test cases
- Set up of test environment
Fulfillment of Entry Criteria
Entry Criteria are a certain set of conditions or requirements or some ongoing activities that should be present before the testing process begins. Software Testing Life Cycle always specifies entry criteria required during each testing phase. They are determined based on the Test strategy. Generally, entry criteria are determined for each level of testing. Entry Criteria can be :
- Availability of testable code
- Appropriate requirements approved by stakeholders.
- Readiness of test cases after approval from test managers.
- Comprehensive set up of test environment with all necessary tools and devices
- Few spot checks to verify if Preconditions are met
- Test Data is correctly validated
- It can be considered as a process control mechanism
Readiness of Test cases
- Functional Test Cases.
- Integration Test Cases.
- Usability Test Cases.
- Database Test Cases.
- Security Test Cases.
- User Acceptance Test Cases.
All these test cases should be verified, reviewed, and reworked if there are any comments. All the aspects of the system should be covered while preparing the test cases. Test cases should be prepared based on updated documents of business requirements. So, once the test cases are ready to execute along with all the test data, a tester can execute them once the test environment has been set up.
Set up of Test Environment
Setting up a Test environment for the execution of Test cases is an important part of the Software Testing Life Cycle. It is an integral part of the testing process and it can be set up parallel with Test case development. It is a software and hardware combination where the software is tested by testers. This environment is not set up by the testing team and it may differ from organization to organization. Before starting testing on this environment and setup, the Test Plan, Test Data, and Smoke test cases should be available.
Smoke test cases should be always run on the Test environment to check the readiness of this environment. After it is a successful test case on the same can be executed.
After considering all three above factors a tester is completely ready to execute the prepared test cases. By this, testers will not face any delays or failures. Test case execution is a vital stage in the Software Testing Life Cycle. Here tester not only tests it but reports the defects or errors in the software.
If there is any failure in test cases, the same is reported to the developer. This could be done by comparing the actual results and expected results. Once the defect is fixed by the developing team, the same is retested by testers.
Activities included in the Test Execution Phase:
- Test case execution
- The status of test cases is marked
- Test results and log of defects are documented
- All the bugs are given different IDs in bug-tracking tools
- Defect tracking till closure
After the test cases are executed, the status of the test cases is marked and the test report is generated. There are always exit criteria fixed for any testing process. For example: If the Pass rate is lower than 80% then testing is postponed until those maximum defects are solved. There are generally 5 kinds of status for test cases:
Blocked: This status is marked when due to some other feature or test case, execution of this test case is hampered.
Passed: This status is marked when the actual result and expected results are similar
Failed: This status is marked when the actual result and expected results are not matched and there is a bug or defect
NotRun: This status is marked when the test case is not executed
Based on this test execution, the test report is generated which shows a clear picture of the Testing process. Based on this report, it can be decided if the software is releasable or not.