[发明专利]一种基于程序失效聚类分析的错误定位方法有效

专利信息
申请号: 201611097861.1 申请日: 2016-12-03
公开(公告)号: CN106598850B 公开(公告)日: 2019-05-28
发明(设计)人: 张娜;王玉森;包晓安;赵泽丹 申请(专利权)人: 浙江理工大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 杭州求是专利事务所有限公司 33200 代理人: 郑海峰
地址: 310018 浙江省杭州市*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 程序 失效 聚类分析 错误 定位 方法
【权利要求书】:

1.一种基于程序失效聚类分析的错误定位方法,其特征在于包括以下步骤:

S1:收集每次失效执行覆盖的代码信息,一次失效执行所覆盖的代码行数的集合即为一个失效执行切片,采用杰卡德距离公式计算失效执行切片之间的距离;

S2:根据K-Means聚类算法对程序失效执行切片进行聚类,得到失效执行切片簇,同一失效簇内的失效所覆盖的代码具有较高的相似度;

S3:根据跳转指令的运行时程序状态划分方法绘出失效执行切片的程序状态序列图,程序状态序列图反映一次失效执行中函数嵌套调用的次数θ;

S4:根据程序状态序列图中函数嵌套调用次数θ分别建立以行/基本块为单位的执行路径覆盖向量和覆盖矩阵,并分别求其频繁集;频繁集是指失效执行中在所有覆盖向量上对目标基本块/行保持覆盖一致性的分量所对应的基本块/行的集合;

所述的步骤S4中根据程序状态序列图中函数嵌套调用次数θ对每条测试用例对应的执行分别建立以行/基本块为单位的执行路径覆盖向量和覆盖矩阵,所述的基本块为中间不存在控制跳转的连续代码语句,覆盖向量的量化方法如下:

设执行轨迹的覆盖向量集合T=<t1,t2,…,tr>,所有覆盖向量的集合构成一个覆盖向量矩阵,其中ti表示第i次执行覆盖的信息构成的覆盖向量,T根据程序执行结果的不同,将T分为成功执行和失效执行两类,分别标记为Tp和Tf;覆盖向量ti=<e1,e2,…,es>

ej表示第i次执行覆盖的第j个基本块/行;

步骤S4中建立频繁集的方法为:首先初始化tas(e)为单位向量,然后依次遍历e分量不为0的覆盖向量并将该覆盖向量与tas(e)进行向量的与操作,求得e频繁集,最后可得所有目标基本块/行的频繁集集合TAS,tas(e)表示以e为目标代码的频繁集;

S5:分别计算出各基本块/行的可疑度并降序排列,根据基本块/行可疑度的大小以及其对应的频繁集依次检查各基本块/行是否含有错误;

所述的步骤S5中根据基本块/行可疑度的大小以及其对应的频繁集依次检查各基本块/行是否含有错误的步骤如下:

1)计算每个基本块/行的可疑度,并根据可疑度的大小降序排列,根据程序状态序列,查看程序函数调用次数是否小于θ,如果是转步骤2),否则转步骤4);

2)从排序后的列表中依次检查基本块是否含有错误,如果定位出错误转步骤6),否则转步骤3);

3)将没有错误的基本块作为目标基本块,依据覆盖信息矩阵求解其频繁集;将频繁集中的基本块依据其可疑度大小降序排列,依次检查各基本块是否含有错误,如果定位出错误转步骤6),否则转步骤2);

4)从排序后的列表中依次检查各行是否含有错误,如果定位出错误转步骤6),否则转步骤5);

5)将没有错误的行作为目标行,依据覆盖信息矩阵求解其频繁集;将频繁集中的各行依据其可疑度大小降序排列,依次检查各行是否含有错误,如果定位出错误转步骤6),否则转步骤4);

6)统计已检查的基本块/行的数量。

2.根据权利要求1所述的一种基于程序失效聚类分析的错误定位方法,其特征在于:所述的步骤S1中失效执行切片之间的距离的量化方法如下:

非空集合A,B表示两个失效执行切片;D(A,B)表示两个失效执行切片之间的相似度,|A|表示集合中元素的个数。

3.根据权利要求1或2所述的一种基于程序失效聚类分析的错误定位方法,其特征在于:所述的步骤S5中基本块/行的可疑度的计算方法如下:

其中,nuv(b)=|{a|xab=u∧ra=v}|,u,v∈{0,1},xab=u,u=1时表示基本块/行在a执行中被覆盖;u=0时表示基本块/行在a执行中没有覆盖,ra=v,v=1时表示a执行是失效执行;v=0时表示a执行不是失效执行。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江理工大学,未经浙江理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611097861.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top