[发明专利]一种基于独立路径的测试数据自动生成方法有效

专利信息
申请号: 201810372298.7 申请日: 2018-04-24
公开(公告)号: CN110399286B 公开(公告)日: 2023-05-12
发明(设计)人: 王曙燕;王瑞;孙家泽 申请(专利权)人: 西安邮电大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 暂无信息 代理人: 暂无信息
地址: 710121 陕*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 独立 路径 测试数据 自动 生成 方法
【权利要求书】:

1.一种基于独立路径的测试数据自动生成方法,其特征在于包括以下步骤:

(1)利用开源软件Soot代码分析工具,生成被测程序P的控制流图CFG,并进行精简以便于分析;

(2)对(1)中生成的控制流图CFG利用圈复杂度得到预防错误所需测试的最少路径条数,即独立路径数N,并对各个路径分支进行编码;根据被测程序P的实际问题,分析其输入输出的类型和范围,确定编码,得到测试用例取值范围;

(3)利用分支距离法对程序P的分支进行插桩,以此获得适应度函数F,其中F的计算方法如下:确定输入测试用例t经过了步骤(2)中的哪一条独立路径,测试用例t形成的路径Patht,路径Patht上共m分支,其中第j个分支节点的分支距离为f(Patht,j),若j分支被覆盖,则设f(Patht,j)值为0,若j分支未被覆盖,则f(Patht,j)为测试用例t在j节点上的分支距离,最终的适应度函数为M,c均为设定常数;

(4)在步骤(2)中得到的测试用例取值范围内,利用混沌序列初始化细菌种群S;

(5)以步骤(4)得到的种群,利用改进的细菌觅食算法BFOA以及步骤(3)中得到的适应度函数F更新迭代种群,其中,在改进的BFOA算法中,设计趋化操作的自适应步长计算公式如下:

其中,ω是调节因子,其目的是为了使得趋化步长在初期依赖趋化次数,后期依赖细菌的适应度值,因此设计使得ω在[0,1]之内递减,其中,NC表示趋化次数最大值,Nj表示当前的趋化次数;用μ表示期望,σ表示标准方差,b=μ,c=σ;Fmax、Fi、Fmin分别表示细菌的适应度最大值,当前细菌的适应度值和细菌的适应度最小值;C(i)表示标准的步长;

迁徙操作的迁徙概率计算如下:

其中Ped表示标准的细菌迁徙概率;

(6)将步骤(4)和步骤(5)产生的种群个体,覆盖被测程序P中的未被覆盖的独立路径的测试用例记录输出;

(7)判断算法的终止条件是否满足:如果不满足条件,跳回步骤(5)进行循环操作;如果满足条件,则结束算法,此时输出所有的测试用例集合。

2.根据权利要求1所述的一种基于独立路径的测试数据自动生成方法,其特征在于:步骤(2)中,对需要覆盖的分支独立路径编码采用数字型编码,分支语句对应的行号记为该分支对应位置的编码;步骤(2)中,对被测程序P的实际问题,确定编码,具体为:数值型,根据定义的数据类型为整数或者浮点数确定取值范围;字符型,使用ASCII码符号对应的数字进行编码;字符串,根据字符型进行编码。

3.根据权利要求1所述的一种基于独立路径的测试数据自动生成方法,其特征在于:步骤(4)中,混沌序列初始化细菌种群S具体如下:随机产生D维向量X=(x1,x2,…,xd),其中xi∈(0,1),1≤i≤d,d为维度;将X通过公式

迭代M次,其中a∈(0,1),当a=0.4时,其概率密度函数在(0,1)内服从均匀分布,迭代完成后得到M个向量Yi=(yi1,yi2,…,yid),i=1,2,…,M;将得到的混沌向量Y通过公式xid=p+yid|p-q|来映射到步骤(2)中的编码范围,其中p,q分别为步骤(2)中的编码的最小值和最大值,最后选取适应度值最高的S个种群,作为细菌觅食算法的初始解空间。

4.根据权利要求1所述的一种基于独立路径的测试数据自动生成方法,其特征在于:步骤(6)中,对步骤(4)产生的初始解和步骤(5)利用BFOA产生的解进行分析,判断解对应的测试用例覆盖被测程序P中,未被覆盖的哪一条独立路径,如果测试用例覆盖了一条之前未被覆盖的独立路径,则将该测试用例记录输出,这样结束之后,将得到一组测试用例集合T=(t1,t2,…,tN),N为被测程序P的独立路径数,其中,每一个测试用例ti(i=1,2,…,N)都覆盖了一条与集合中其他测试用例不同的独立路径。

5.根据权利要求1所述的一种基于独立路径的测试数据自动生成方法,其特征在于:步骤(7)中算法的终止条件:已经得到覆盖被测程序P中所有独立路径的测试用例,或达到设置的最大迭代次数。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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