Simplifying and isolating failure-inducing input
Top Cited Papers
- 7 August 2002
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 28 (2) , 183-200
- https://doi.org/10.1109/32.988498
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 the 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 three 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
This publication has 6 references indexed in Scilit:
- Yesterday, my Program Worked. Today, it Does Not. Why?Published by Springer Nature ,1999
- Unified versioning through feature logicACM Transactions on Software Engineering and Methodology, 1997
- Automatic isolation of compiler errorsACM Transactions on Programming Languages and Systems, 1994
- An empirical study of the reliability of UNIX utilitiesCommunications of the ACM, 1990
- Dynamic program slicingACM SIGPLAN Notices, 1990
- Programmers use slices when debuggingCommunications of the ACM, 1982