Fault Localization Prioritization: Comparing Information-Theoretic and Coverage-Based Approaches

被引:73
作者
Yoo, Shin [1 ]
Harman, Mark [1 ]
Clark, David [1 ]
机构
[1] UCL, London WC1E 6BT, England
关键词
Algorithms; Test case prioritization; fault localization; information theory; FLOW;
D O I
10.1145/2491509.2491513
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Test case prioritization techniques seek to maximize early fault detection. Fault localization seeks to use test cases already executed to help find the fault location. There is a natural interplay between the two techniques; once a fault is detected, we often switch focus to fault fixing, for which localization may be a first step. In this article we introduce the Fault Localization Prioritization (FLP) problem, which combines prioritization and localization. We evaluate three techniques: a novel FLP technique based on information theory, FLINT (Fault Localization using INformation Theory), that we introduce in this article, a standard Test Case Prioritization (TCP) technique, and a "test similarity technique" used in previous work. Our evaluation uses five different releases of four software systems. The results indicate that FLP and TCP can statistically significantly reduce fault localization costs for 73% and 76% of cases, respectively, and that FLINT significantly outperforms similarity-based localization techniques in 52% of the cases considered in the study.
引用
收藏
页码:1 / 29
页数:29
相关论文
共 31 条
[11]  
Cover T.M., 2006, ELEMENTS INFORM THEO, V2nd ed
[12]   On similarity-awareness in testing-based fault localization [J].
Dan Hao ;
Lu Zhang ;
Ying Pan ;
Hong Mei ;
Jiasu Sun .
AUTOMATED SOFTWARE ENGINEERING, 2008, 15 (02) :207-249
[13]  
Denning D.E.R., 1982, CRYPTOGRAPHY DATA SE, V112, DOI [10.5555/539308, DOI 10.5555/539308]
[14]   Supporting controlled experimentation with testing techniques: An infrastructure and its potential impact [J].
Do, HS ;
Elbaum, S ;
Rothermel, G .
EMPIRICAL SOFTWARE ENGINEERING, 2005, 10 (04) :405-435
[15]  
Elbaum S., 2000, Software Engineering Notes, V25, P102, DOI 10.1145/347636.348910
[16]   Prioritizing tests for software fault diagnosis [J].
Gonzalez-Sanchez, Alberto ;
Piel, Eric ;
Abreu, Rui ;
Gross, Hans-Gerhard ;
van Gemund, Arjan J. C. .
SOFTWARE-PRACTICE & EXPERIENCE, 2011, 41 (10) :1105-1129
[17]   How Well Do Test Case Prioritization Techniques Support Statistical Fault Localization [J].
Jiang, Bo ;
Zhang, Zhenyu ;
Tse, T. H. ;
Chen, T. Y. .
2009 IEEE 33RD INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE, VOLS 1 AND 2, 2009, :99-+
[18]  
Jones J.A., 2001, Proceedings of ICSE 2001 Workshop on Software Visualization, Toronto, Ontario, Canada, P71
[19]  
Jones J. A., 2005, ASE, P273
[20]  
Jones JA, 2002, ICSE 2002: PROCEEDINGS OF THE 24TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, P467, DOI 10.1109/ICSE.2002.1007991