Simplifying and Isolating Failure-Inducing Input
by
Andreas Zeller, Ralf Hildebrandt
IEEE Transactions on Software Engineering, Pages 183-200, Volume 28, Number 2, February 2002.
See also
More information is available at http://www.st.cs.uni-saarland.de/dd/.
Abstract
Given some test case, a program fails. Which circumstances of the test case are responsible for the particular failure? The Delta Debugging algorithm generalizes and simplifies some failing test case to a minimal test case that still produces the failure; it also isolates the difference between a passing and a failing test case. In a case study, the Mozilla web browser crashed after 95 user actions. Our prototype implementation automatically simplified the input to 3 relevant user actions. Likewise, it simplified 896 lines of HTML to the single line that caused the failure. The case study required 139 automated test runs, or 35 minutes on a 500 MHz PC.
Keywords
- automated debugging
- debugging aids
- testing tools
- combinatorial testing
- diagnostics
- tracing
BibTeX Entry
@article{zeller-tse-2002, title = "Simplifying and Isolating Failure-Inducing Input", author = "Andreas Zeller and Ralf Hildebrandt", year = "2002", month = feb, journal = "IEEE Transactions on Software Engineering", number = "2", pages = "183--200", volume = "28", }