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.
FailureDoc REF augments a failed test with debugging clues, which could be extended to help explain why the tests generated by @TCOMMENT fail.
Automated documentation inference to explain failed tests
2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011)
2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011)
Computer Science