Affiliation:
1. American University of Beirut, Beirut, Lebanon
Abstract
Researchers have argued that for failure to be observed the following three conditions must be met:
C
R
= the defect was reached;
C
I
= the program has transitioned into an infectious state; and
C
P
= the infection has propagated to the output.
Coincidental Correctness
(CC) arises when the program produces the correct output while condition C
R
is met but not C
P
. We recognize two forms of coincidental correctness, weak and strong. In
weak CC
, C
R
is met, whereas C
I
might or might not be met, whereas in
strong
CC
, both C
R
and C
I
are met. In this work we first show that CC is prevalent in both of its forms and demonstrate that it is a safety reducing factor for
Coverage-Based Fault Localization
(CBFL). We then propose two techniques for cleansing test suites from coincidental correctness to enhance CBFL, given that the test cases have already been classified as failing or passing. We evaluated the effectiveness of our techniques by empirically quantifying their accuracy in identifying weak CC tests. The results were promising, for example, the better performing technique, using 105 test suites and statement coverage, exhibited 9% false negatives, 30% false positives, and no false negatives nor false positives in 14.3% of the test suites. Also using 73 test suites and more complex coverage, the numbers were 12%, 19%, and 15%, respectively.
Funder
National Science Foundation
Lebanese National Council for Scientific Research
Publisher
Association for Computing Machinery (ACM)
Cited by
77 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献