计算机科学与探索 ›› 2014, Vol. 8 ›› Issue (8): 966-977.DOI: 10.3778/j.issn.1673-9418.1403005
江 联1,黄海亮1,周晓聪1+,王欣明2,李文军2
JIANG Lian1, HUANG Hailiang1, ZHOU Xiaocong1+, WANG Xinming2, LI Wenjun2
摘要: 在实际调试中,程序员往往通过追溯错误的变量值及其传播来定位软件错误,其中具有错误值的变量称为感染变量,感染变量在失败运行中具有错误值的程序位置即为感染位置。提出了一种结合动态正向程序切片和语句覆盖信息对程序变量感染的初始位置进行定位的技术。该技术通过分析感染变量的起源与传播,可以更加精确地找到与感染变量相关的错误语句集合。与传统的基于程序覆盖信息的错误定位技术进行了对比实验,结果表明,该技术可定位程序中的感染变量及其初始感染位置,并且可以显著提高程序错误定位的精度。