An Empirical Study of the Branch
Coverage of Different Fault Classes
Melissa S. Cline
Linda. L. Werner
September 5, 1994
Baskin Center for
Computer Engineering & Information Sciences
University of California, Santa Cruz
Santa Cruz, CA 95064 USA
The question How much testing is enough?" has led many to structural testing methods. Much has been written about their fault detecting ability, but how does this vary by the class of fault?
This paper introduces the term Affected Branch Coverage. An affected branch is a
branch which had to be modified in order to fix a fault. Affected Branch Coverage describes
the percentage of affected branches that had been exercised in testing. The study was done
on a leading on-line transaction processing product, analyzing ninety eight field errors.
The specific questions addressed are:
ffl Which classes of faults are most commonly observed?
ffl Which fault classes can be associated with covered code and which with uncovered code?
ffl Is affected branch coverage related to the maturity of the software?
Our results show that whether or not a fault would appear in covered code depends strongly on the fault class. While this was true in both newer and older code, it was more vivid in newer code. Overall, we found that affected branch coverage was slightly less than 50%, suggesting that increasing branch coverage would offer limited gains in fault detection.
Keywords: branch testing, code coverage, fault classification
?This work was partially supported by the International Business Machines Corporation grant # STL93215.