Taming coincidental correctness: coverage refinement with context pattern to improve fault localization

Abstract:Recent techniques for fault localization leverage code coverage to address the high cost problem of debugging. These techniques exploit the correlations between pro- gram failures and the coverage of program entities as the clue in locating faults. Experimental evidence shows that the effectiveness of these techniques can be affected adversely by coincidental correctness, which occurs when a fault is executed but no failure is detected. In this paper, we propose an approach to address this problem. We re- fine code coverage of test runs using control- and data- flow patterns prescribed by different fault types. We conjecture that this extra information, which we call context patterns, can strengthen the correlations between pro- gram failures and the coverage of faulty program entities, making it easier for fault localization techniques to locate the faults. To evaluate the proposed approach, we have conducted a mutation analysis on three real world pro- grams and cross-validated the results with real faults. The experimental results consistently show that coverage refinement is effective in easing the coincidental correctness problem in fault localization techniques.
Grants:GRF 612108, GRF 111107, GRF 123207, GRF RPC07/08.EG24
Citation:Xinming Wang, S.C. Cheung, W.K. Chan, and Zhenyu Zhang, "Taming coincidental correctness: refine code coverage with context pattern to improve fault localization", in Proceedings of the 31st International Conference on Software Engineering (ICSE 2009), (.Vancouver, Canada, May 16-24, 2009,) pages 45-55, IEEE Computer Society Press, Los Alamitos, CA, USA, 2009.
Remarks:[Acceptance rate: 12.3%, 50 out of 405]
Related Papers:-

Selected Tags

Tag Groups


ACM SigSoft
IEEE Software Engineering Online