MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  An Empirical Study of the Branch Coverage of Dierent Fault Classes

Download:
Download as a PDF | Download as a PS
by Melissa S. Cline, Linda L. Werner
http://www.cse.ucsc.edu/~cline/csspaper.ps.gz
Add To MetaCart

Abstract:

The question \How much testing is enough? " has led many to explore code coverage metrics and structural testing. High branch coverage is common in unit testing, but can be a dicult goal to reach in system level testing. Before attempting to increase branch coverage, it is important to understand the tradeos between testing cost and additional fault detection. One part of this understanding is knowing which classes of faults are easily detected with structural testing methods, and which are not. To answer this question, we studied ninety eight post release software faults on a leading on-line transaction processing system. For each fault, we determined whether or not it had been covered in prerelease testing. We assigned each fault to a class, using a fault taxonomy from a similar study [SC92]. Finally, we examined which classes of faults were most prevalent, and which classes most often appear in covered branches. To quantify this, we dened a branch which was modied during a x as an \aected branch", and de ned \aected branch coverage " to be the percentage of aected branches that had been covered in testing. We dened the overall aected branch coverage to be the percentage of all aected branches that had been covered in testing. We measured the overall affected branch coverage for each fault class, and for all of the ninety-eight faults. Our results show that whether or not a fault appears in covered branches depends strongly on the fault class. Certain classes of faults had well over 50% overall aected branch coverage | increasing coverage would probably oer limited gains in fault detection for these classes. Overall, 60.3 % of all faults were in classes with high aected branch coverage, and the af-

Citations

310 Software Testing Techniques – Beizer - 1990
46 Coverage Measurement Experience During Function Test – Piwowarski, Ohba, et al. - 1993
32 A Comparison of Software Defects in Database Management Systems and Operating Systems – Sullivan, Chillarege - 1992
23 An experimental comparison of the error exposing ability of program testing criteria – Girgis, Woodward - 1986
22 An empirical comparison of software fault tolerance and fault elimination – Shimeall, Leveson - 1991
15 Practical Results From Measuring Software Quality – Grady - 1993
12 Experience in testing the motif interface – Su, Ritter - 1991
11 Analyzing the test process using structural coverage – Ramsey, Basli - 1985
11 Combining software testing strategies: An empirical evaluation – Selby - 1986
4 Comparing the eectiveness of software testing strategies – Basili, Selby - 1987
3 Personal communications with Barbara Wade of IBM – Wade - 1994