[发明专利]一种基于谓词执行序列的软件动态缺陷定位方法有效

专利信息
申请号: 201010219288.3 申请日: 2010-06-25
公开(公告)号: CN101872325A 公开(公告)日: 2010-10-27
发明(设计)人: 郑征;李伟;梁宇;蔡开元 申请(专利权)人: 北京航空航天大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 北京慧泉知识产权代理有限公司 11232 代理人: 王顺荣;唐爱华
地址: 100191 北京市海淀区*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 一种基于谓词执行序列的软件动态缺陷定位方法,包括五个步骤:(1)对含缺陷的程序插桩;(2)加载程序的测试用例,运行插有输出谓词执行序列桩函数的程序;(3)分别收集程序运行正确时,和运行错误时,桩函数的输出信息;(4)对收集到的谓词运行信息做统计学分析,统计学分析又包括统计谓词执行序列、统计谓词执行序列向量、计算谓词关联缺陷度和谓词排序这四小步;(5)根据第四步中得到的谓词序列,对谓词依序进行查找,直到找到缺陷为止。该方法将谓词的执行序列信息贯穿到关联缺陷定位的四个基本步骤中,以提高定位效率,而且方法简单,容易实现。
搜索关键词: 一种 基于 谓词 执行 序列 软件 动态 缺陷 定位 方法
【主权项】:
1.一种基于谓词执行序列的软件动态缺陷定位方法,其特征在于:它包括以下五个步骤:第一步对含缺陷的程序插桩;插桩是为了得到程序运行时的谓词执行序列信息,对程序中的分支谓词:if、while、for以及return语句中的谓词进行插桩;桩函数要求在程序运行时输出谓词的状态信息,状态信息包括两种:第一种信息是,该谓词的编号;第二种信息是,待测程序在加载测试用例后,运行正确或错误时,谓词的执行状态,用“+”表示谓词执行判定为“真”,“-”表示谓词执行判定为“假”;第二步加载程序的测试用例,运行插有输出谓词执行序列桩函数的程序;记录程序运行正确的次数和运行错误的次数,为便于后文的说明方便,用m表示运行正确的次数,n表示运行错误的次数;第三步分别收集程序运行正确时,和运行错误时,桩函数的输出信息;第四步对收集到的谓词运行信息做统计学分析,该步骤分为五小步:(一)利用得到的信息,统计程序中单个谓词在程序一次运行中的执行序列;程序每运行一次,对单个谓词的执行有三种情况:执行多次;执行一次;不执行;程序运行到某谓词时,若该谓词判定为“真”,计为1,若该谓词判定为“假”,计为0,程序一次运行,若该谓词执行了多次,则它的执行序列是0和1所组成的序列;若只执行了一次,则它的执行序列就只有一个数:0或1;若没有被执行,则它此次的执行序列为空;用这种方法统计,则单个谓词共有m个程序运行正确的执行序列,和n个程序运行错误的执行序列;(二)利用谓词的执行序列,统计出单个谓词的执行序列向量P4;P4是一个四维向量,包括n01、n10、n00,n11这四个值,其中n01和n10分别用来记录谓词的执行序列中在一次程序运行的结果中,从0变化到1的次数和从1变为0的次数;而n00和n11分别记录谓词执行序列中连续两次为0的次数和连续两次为1的次数;在一次程序运行中,若某谓词执行了多次,分别记录n01、n10、n00,n11的值;若只执行了一次:谓词执行序列为0时,设定n00=0.5,n01=n10=n11=0;谓词执行序列为1时,设定n11=0.5,n01=n10=n00=0;若该谓词没有执行,则n01=n10=n11=n00=0;从而,得到单个谓词m个程序运行正确的执行序列向量和n个程序运行错误的执行序列向量;(三)利用谓词执行序列向量P4,计算单个谓词的缺陷关联度;定义单个谓词的缺陷关联度Pdiverge=|P4+-P4-|,这里的P4+表示程序正确运行时谓词的执行序列向量,P4-表示程序错误运行时谓词的执行序列向量;P4+的计算方法为:m个程序运行正确的执行序列向量相加,然后进行归一化处理,即程序运行正确的执行序列向量)/m;P4-的计算方法为:n个程序运行错误的执行序列向量相加,然后进行归一化处理,即程序运行错误的执行序列向量)/n;(四)利用第三步得到的谓词执行信息,对程序中的每个谓词执行上述的(一)至(三)步,直至得到全部谓词的缺陷关联度;(五)按照缺陷关联度的高低,将所有谓词从高到低排序;第五步根据第四步中得到的谓词序列,对谓词依序进行查找,直到找到缺陷为止。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/patent/201010219288.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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