DocumentCode
3601980
Title
First, Debug the Test Oracle
Author
Xinrui Guo ; Min Zhou ; Xiaoyu Song ; Ming Gu ; Jiaguang Sun
Author_Institution
Key Lab. for Inf. Syst. Security, Tsinghua Univ., Beijing, China
Volume
41
Issue
10
fYear
2015
Firstpage
986
Lastpage
1000
Abstract
Opposing to the oracle assumption, a trustworthy test oracle is not always available in real practice. Since manually written oracles and human judgements are still widely used, testers and programmers are in fact facing a high risk of erroneous test oracles. However, test oracle errors can bring much confusion thus causing extra time consumption in the debugging process. As substantiated by our experiment on the Siemens Test Suite, automatic fault localization algorithms suffer severely from erroneous test oracles, which impede them from reducing debugging time to the full extent. This paper proposes a simple but effective approach to debug the test oracle. Based on the observation that test cases covering similar lines of code usually generate similar results, we are able to identify suspicious test cases that are differently judged by the test oracle from their neighbors. To validate the effectiveness of our approach, experiments are conducted on both the Siemens Test Suite and grep. The results show that averagely over 75 percent of the highlighted test cases are actually test oracle errors. Moreover, performance of fault localization algorithms recovered remarkably with the debugged oracles.
Keywords
fault diagnosis; program debugging; program testing; Siemens Test Suite; automatic fault localization algorithm; oracle error testing; test oracle debugging; Accuracy; Algorithm design and analysis; Debugging; Error analysis; Manuals; Measurement; Software; Test oracle; debugging; spectrum-based fault localization; test oracle;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/TSE.2015.2425392
Filename
7091939
Link To Document