论文部分内容阅读
基于程序频谱的动态缺陷定位(spectrumbaseddynamicfaultlocalization,SFL)可分为基于可执行语句覆盖的方法和基于谓词覆盖的方法。通过分析以上两类方法可以发现:a)基于可执行语句覆盖的方法未考虑谓词错误和执行结果之间的关联;b)基于谓词覆盖的方法只针对谓词进行插桩,最后只计算谓词的可疑度并对谓词进行排序,如果缺陷是非谓词,此类方法无法准确定位缺陷位置;C)忽略了基本块之间的关联和层次特性,将各个基本块看成相互独立的个体。为解决上述问题,首先,将谓词错误与执行结果之间的关联