返回
Combining mutation and fault localization for automated program debugging
DOI:10.1016/j.jss.2013.10.042.png)
摘要
En 中文
This paper proposes a strategy for automatically fixing faults in a program by combining the ideas of mutation and fault localization. Statements ranked in order of their likelihood of containing faults are mutated in the same order to produce potential fixes for the faulty program. The proposed strategy is evaluated using 8 mutant operators against 19 programs each with multiple faulty versions. Our results indicate that 20.70% of the faults are fixed using selected mutant operators, suggesting that the strategy holds merit for automatically fixing faults. The impact of fault localization on efficiency of the overall fault-fixing process is investigated by experimenting with two different techniques, Tarantula and Ochiai, the latter of which has been reported to be better at fault localization than Tarantula, and also proves to be better in the context of fault-fixing using our proposed strategy. Further experiments are also presented to evaluate stopping criteria with respect to the mutant examination process and reveal that a significant fraction of the (fixable) faults can be fixed by examining a small percentage of the program code. We also report on the relative fault-fixing capabilities of mutant operators used and present discussions on future work. (C) 2013 Elsevier Inc. All rights reserved.
Keyword:
Program debugging
Mutation
Fault localization
Fault-fixing
Software testing
期刊
IF:
4.1
论文数:
5.5K
被引数:
8.4K
机构
引用论文
Screen time and physical activity of young children reflects their mother's behaviours: findings from the Healthy Beginnings Trial儿童的屏幕时间和身体活动反映了他们母亲的行为: 健康开端试验的结果
A Study on Thiol‐Michael Addition to Semi‐Synthetic Elastin‐Hyaluronan Material for Electrospun Scaffolds
ChemPlusChem
IF0

