摘要
在软件调试过程中,如何快速、精确地定位程序中的错误代码是软件开发人员普遍关注的问题。基于变异的错误定位方法是一种通过分析被测程序与程序变异体之间的行为相似性来估计语句出错概率、进行错误定位的方法。该方法有较高的错误定位精确度,但由于需对大量程序变异体执行测试用例集,因此其变异执行开销较大。为此提出了一种动态变异执行策略,它通过搜集测试用例执行信息,动态地调整变异体及测试用例的执行顺序,以减少其变异执行开销。实验结果表明,在6个程序包的127个错误版本上,应用提出的动态变异执行策略可在保证错误定位精确度的前提下,减少23%~78%的变异执行开销,显著提高了基于变异的错误定位方法的效率。
During software debugging process,how to locate faults in programs quickly and accurately is an issue of common concern to developers.Mutation-based fault localization is an approach by estimating the possibilities of statements that incur error to locate faults on the basis of the similarity between the programs under test and corresponding mutants.This approach shows a high precision on fault localization but requires a large execution cost,since it needs to execute the test suite on a lot of mutants.For reducing unnecessary execution cost,this paper presented a dynamic mutation execution strategy,which dynamically adjusts the execution orders of both mutants and test cases according to previous execution information.Empirical studies were conducted on 127 faulty versions from 6program packages.The results indicate that this strategy can reduce 23% up to 78% mutation execution cost under the case of keeping fault location precision.
出处
《计算机科学》
CSCD
北大核心
2016年第2期199-203,229,共6页
Computer Science
基金
国家自然科学基金项目(61170082
61472025)
教育部新世纪优秀人才支持计划(NCET-12-0757)资助
关键词
错误定位
变异分析
变异执行策略
Fault localization
Mutation analysis
Mutation execution strategy