Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
6885735 | Journal of Systems and Software | 2014 | 32 Pages |
Abstract
Recent techniques for fault localization statistically analyze coverage information of a set of test runs to measure the correlations between program entities and program failures. However, coverage information cannot identify those program entities whose execution affects the output and therefore weakens the aforementioned correlations. This paper proposes a slice-based statistical fault localization approach to address this problem. Our approach utilizes program slices of a set of test runs to capture the influence of a program entity's execution on the output, and uses statistical analysis to measure the suspiciousness of each program entity being faulty. In addition, this paper presents a new slicing approach called approximate dynamic backward slice to balance the size and accuracy of a slice, and applies this slice to our statistical approach. We use two standard benchmarks and three real-life UNIX utility programs as our subjects, and compare our approach with a sufficient number of fault localization techniques. The experimental results show that our approach can significantly improve the effectiveness of fault localization.
Related Topics
Physical Sciences and Engineering
Computer Science
Computer Networks and Communications
Authors
Xiaoguang Mao, Yan Lei, Ziying Dai, Yuhua Qi, Chengsong Wang,