Software Test coverage is one of the most important indicators of your software test progress. There are many different ways to track software test coverage; bugs, requirements, components, code, configuration, change, data, etc. Using just one method will never present you with an accurate picture. Using multiple methods to track software test coverage will always give you a clearer picture.
The most common methods for tracking test coverage include:
Bug count: this helps demonstrate that a product is not ready for release. However, an absence of recorded bugs won’t show that the product is ready for release.
Requirements coverage: testing each requirement will help prove that the product meets the customer’s needs. Where requirements are subjective it can be difficult to gauge how well a requirement is covered.
Component coverage: tracking tests against individual components of a product can help show components that haven’t been covered. Again the problem here is that it is difficult to accurately gauge how well a component has tested.
Code coverage: the lines-of-code covered measure is useful for showing how much of the application you have exercised. However, this method won’t tell you if functionality is missing or if the features implemented meet the customer’s requirements.
Test case coverage: the number of test cases covered as a percentage of the test cases you planned to run is one of the simplest test coverage measures. This measure can be very misleading though as it depends largely on the scope of coverage of each test case.
Taken together a range of different software coverage figures can be a very powerful indication of test coverage. For example you may know that you have completed test cases covering all of the products components. You may also know that your code coverage is 10% higher than you achieved for a previous release. In addition, bug counts for this version may list only a few minor bugs. These values taken together would be a far stronger indication of good software test coverage than just one value which says we’ve completed 70% of our software test cases.
