一种基于加权软件行为图挖掘的软件错误定位方法
已有错误定位方法通常仅给出可疑语句排序而缺少必要的上下文信息,导致难于理解软件失效的产生原因。为了解决该问题,定义了加权软件行为图来表示成功和失败的程序执行路径,由于图中边的权重表示了路径的执行频率,因此与 LEAP 方法相比,可以较好地分析与循环和递归等结构相关的软件错误。在此基础上,执行基于分支限界搜索的加权软件行为图挖掘算法,识别成功和失败执行之间最有差异的子图来获得错误签名,不但可以有效定位错误位置,还能输出缺陷语句相关的执行路径,从而提供失效产生的上下文。分析 Siemens 基准测试集和flex 程序的结果表明,在检查相同百分比的语句的情况下,文中方法可以比 Tarantula 方法和 LEAP 方法定位到更多的错误。特别是对于冗余代码、缺失代码和变量替换,以及会直接改变执行路径类的错误,文中方法具有较高的定位精度。
错误定位、软件行为图、图挖掘、错误签名、分支限界搜索
39
TP311(计算技术、计算机技术)
国家自然科学基金61173021,61202092,61672191;教育部博士点基金20112302120052资助.
2016-11-30(万方平台首次上网日期,不代表论文的发表时间)
共14页
2175-2188