Analyzing Partition Testing Strategies
IEEE Transactions on Software Engineering
Experiments of the effectiveness of dataflow- and controlflow-based test adequacy criteria
ICSE '94 Proceedings of the 16th international conference on Software engineering
Software unit test coverage and adequacy
ACM Computing Surveys (CSUR)
On random and partition testing
Proceedings of the 1998 ACM SIGSOFT international symposium on Software testing and analysis
An Experimental Comparison of the Effectiveness of Branch Testing and Data Flow Testing
IEEE Transactions on Software Engineering
The Art of Software Testing
A survey of coverage based testing tools
Proceedings of the 2006 international workshop on Automation of software test
When only random testing will do
Proceedings of the 1st international workshop on Random testing
Experimental assessment of random testing for object-oriented software
Proceedings of the 2007 international symposium on Software testing and analysis
Efficient unit test case minimization
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
International Journal on Software Tools for Technology Transfer (STTT)
On the Predictability of Random Tests for Object-Oriented Software
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
Formal analysis of the effectiveness and predictability of random testing
Proceedings of the 19th international symposium on Software testing and analysis
Hi-index | 0.00 |
Most approaches to testing use branch coverage to decide on the quality of a given test suite. The intuition is that covering branches relates directly to uncovering faults. The empirical study reported here applied random testing to 14 Eiffel classes for a total of 2520 hours and recorded the number of uncovered faults and the branch coverage over time. For the tested classes, (1) random testing reaches 93% branch coverage (2) it exercises almost the same set of branches every time, (3) it detects different faults from execution to execution, (4) during the first 10 minutes of testing, while branch coverage increases rapidly, there is a strong correlation between branch coverage and the number of uncovered faults, (5) over 50% of the faults are detected at a time where branch coverage hardly changes, and the correlation between branch coverage and the number of uncovered faults is weak. These results provide evidence that branch coverage is not a good stopping criterion for random testing. They also show that branch coverage is not a good indicator for the effectiveness of a test suite.