Test Deliverables are documents that are given to the stakeholders when the software is being developed. In this section we will discuss the following test deliverables:
A software testing strategy is a roadmap for testing activities in a project. Testing can be a very difficult if it is not broken down into smaller well defined processes. A test strategy helps in defining the testing process and on the basis of which the testing team evaluates the time, effort and resources required for the entire process. A good strategy is the one that allows good planning, management and tracking of processes.Software Testing Plan
A test plan defines the overall strategy for testing software. It explains the required testing environment and what level of testing will be conducted. The test plan imparts information on how test results will be analyzed and which metrics will be used for the purpose. Exit criteria for each phase are defined and estimate of test effort and cost are mentioned in the plan.
Test Scenario is a hypothetical case made to help the tester test the software in a well-defined manner. Test cases on the other hand are very simple and straight forward that explain what needs to be done. They are generally one line statements and you need to feed in an input and check the expected output for every input. Test scenarios can be complex and compelling like a story. It is a situation given to a tester to evaluate the software.
The concept of test scenarios came into existence in the year 2003 after it was observed that maintenance of test cases with step by step description, input data and expected results was a very complicated process. Then the industry has come up with something that was easy to use.
Test cases on the other hand are very direct. They tell what the tester should do and how the software needs to be tested.
As the name suggests software metrics is nothing but the standards of measurement defined to evaluate software. Any unit used to measure any attribute of software is called a metrics. Software test metrics is used to measure the quality of software. These metrics give a fair idea about the readiness of a system while it is still under development. Now you may ask why do we need a software test metrics? Well, the answer is very simple- we can only improve those things that we can measure, because anything that is measurable is controllable. Decisions of every phase of software development are taken only after referring to the software test metrics of the previous phase. Software test metrics can be of two types:
Product metrics plays a very important role in defining product quality improvement initiatives. Constant evaluation of the product helps the team decide if there is a need for any type of correction in any characteristic of the product well in time. Product metrics measures the characteristics of a product:
Process Metrics measure the processes so that if there is any scope of improvement that can be done. Process metrics can help in saving a lot of time and effort. Every process is designed keeping some target in mind and process metrics helps in assessing how far the team has been successful in achieving it. Process metrics play a very important role in tracking software testing activities. Software testing is a very important aspect of software development and efficiency and effectiveness of a project can improve significantly by monitoring testing activities. From the point of view of software development process metrics can be used to measure:
Software testing documents that prepared during or before testing to keep a track of all the testing activities are called software test documents. The important software testing documents include:
Software Testing Reports
In this section we will discuss the following reports:
Daily Test Status Reports
Daily test status report helps in maintaining transparency within the test team and with the project and program stakeholders. At any point of time the project manager can have a look at how many defects are reported on daily basis, how many test cases are run and how much work was done by each tester. A daily status report has information regarding:
Incident reports help in coordinating testing and development activities. Incident management involves:
Test project closure report is created when the exit criterion of the project is reached or when the entire testing activity has been completed. This report is created by the test lead and later reviewed by all the stakeholders and clients. This report has all the details of the test cases that have been successfully executed and if there is any outstanding defect that the team plans to resolve post project deployment then that is also mentioned in this report.