ReCrash: Making software failures reproducible by preserving object states
Submitted by mernst on Wed, 2011-11-30 14:35
| Title | ReCrash: Making software failures reproducible by preserving object states |
| Publication Type | Conference Paper |
| Year of Publication | 2008 |
| Authors | Artzi S, Kim S, Ernst MD |
| Conference Name | ECOOP 2008 –- Object-Oriented Programming, 22nd European Conference |
| Date or Month Published | July 9–11 |
| Conference Location | Paphos, Cyprus |
| Abstract | <p>It is very hard to fix a software failure without being able to reproduce it. However, reproducing a failure is often difficult and time-consuming. This paper proposes a novel technique, ReCrash, that generates multiple unit tests that reproduce a given program failure. During every execution of the target program, ReCrash stores partial copies of method arguments in memory. If the program fails (e.g., crashes), ReCrash uses the saved information to create unit tests reproducing the failure. </p> <p> We present ReCrashJ, an implementation of ReCrash for Java. ReCrashJ reproduced real crashes from Javac, SVNKit, Eclipsec, and BST\@. ReCrashJ is efficient, incurring 13%–64% performance overhead. If this overhead is unacceptable, then ReCrashJ has another mode that has negligible overhead until a crash occurs and 0%–1.7% overhead until the crash occurs for a second time, at which point the test cases are generated.</p> |
| Downloads | ReCrash implementation PDF PostScript |
| Citation Key | ArtziKE2008 |
Last changed Mon, 2013-06-03 10:27

cs.