• 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