Title :
Automated documentation inference to explain failed tests
Author :
Zhang, Sai ; Zhang, Cheng ; Ernst, Michael D.
Author_Institution :
Univ. of Washington, Seattle, WA, USA
Abstract :
A failed test reveals a potential bug in the tested code. Developers need to understand which parts of the test are relevant to the failure before they start bug-fixing. This paper presents a fully-automated technique (and its tool implementation, called FailureDoc) to explain a failed test. FailureDoc augments the failed test with explanatory documentation in the form of code comments. The comments indicate changes to the test that would cause it to pass, helping programmers understand why the test fails. We evaluated FailureDoc on five real-world programs. FailureDoc generated meaningful comments for most of the failed tests. The inferred comments were concise and revealed important debugging clues. We further conducted a user study. The results showed that FailureDoc is useful in bug diagnosis.
Keywords :
document handling; inference mechanisms; program debugging; program diagnostics; program testing; FailureDoc; automated documentation inference; bug diagnosis; bug fixing; code comments; debugging clues; failed tests; tested code; Arrays; Concrete; Correlation; Debugging; Documentation; Measurement; Vectors;
Conference_Titel :
Automated Software Engineering (ASE), 2011 26th IEEE/ACM International Conference on
Conference_Location :
Lawrence, KS
Print_ISBN :
978-1-4577-1638-6
DOI :
10.1109/ASE.2011.6100145