[发明专利]一种基于支配关系的测试用例生成方法与装置有效

专利信息
申请号: 202010868410.3 申请日: 2020-08-26
公开(公告)号: CN112052166B 公开(公告)日: 2021-05-18
发明(设计)人: 吉顺慧;刘凡;张鹏程 申请(专利权)人: 河海大学
主分类号: G06F11/36 分类号: G06F11/36;G06N3/12
代理公司: 南京苏高专利商标事务所(普通合伙) 32204 代理人: 孟红梅
地址: 210024 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 支配 关系 测试 生成 方法 装置
【权利要求书】:

1.一种基于支配关系的测试用例生成方法,其特征在于,所述方法包括:

基于构建的待测试程序的控制流图CFG模型分析程序的数据流,计算程序中的定义-使用对;

定义基于支配关系的适应度函数,利用面向多目标的遗传算法生成满足all-uses准则的测试用例集;其中测试用例x关于变量var的定义-使用对(var,d,u)基于支配关系的适应度函数表示为:

其中,p(x)表示测试用例x的执行路径,d、u分别是变量var的定义结点和使用结点;

其中,dom(d)是定义结点d的支配结点集,dom(u)是包括使用结点u的支配结点和定义结点d的结点集,cdom(d)和cdom(u)分别是dom(d)和dom(u)中被p(x)覆盖的结点集,fdom(d∨u)是dom(d)和dom(u)的并集中被p(x)覆盖超过1次的结点集,udom(d∨u)是dom(d)和dom(u)的并集中未被p(x)覆盖的结点集;设sp(x)是p(x)中使得定义结点d中的定义保持活性的子路径,pre(x)是p(x)中从开始结点到第一个定义结点d之间的子路径,dom1(u)是定义结点d和使用结点u之间u的支配结点集,dom2(u)是dom(u)中不属于dom1(u)的支配结点集,cdom1(u)是dom1(u)中被子路径sp(x)覆盖的结点集,cdom2(u)是dom2(u)中被子路径pre(x)覆盖的结点集;fdom’(u)是dom1(u)中被子路径sp(x)覆盖超过1次的结点集,udom’(u)是dom1(u)中未被子路径sp(x)覆盖的结点集;α是预设的阈值,0.85≤α≤0.95,max表示对p(x)的多条子路径sp(x)的计算值取最大值;

利用面向多目标的遗传算法生成满足all-uses准则的测试用例集的方法为:随机生成初始种群作为当前种群,对当前种群中的每个个体解码,作为输入运行插装后的程序获取执行路径,利用适应度函数计算个体对各定义-使用对的适应度值,判断个体是否覆盖某定义-使用对;若还存在未覆盖的定义-使用对或设定的最大迭代次数未达到,则对当前种群进行选择、交叉、变异,得到新的种群,并对新种群中的个体进行判断;在遗传算法的一次迭代中,种群面临的问题目标是覆盖所有待测试的定义-使用对,若某些定义-使用对被该种群中的个体覆盖到,则将它们从待覆盖的定义-使用对集合中删除,如此随着测试用例的生成,待覆盖的目标数量渐减。

2.根据权利要求1所述的一种基于支配关系的测试用例生成方法,其特征在于,计算p(x)中使得定义结点d中的定义保持活性的子路径sp(x)的方法为:对p(x)中出现的每个定义结点d,从d开始识别下一个对变量var进行定义的结点ni,若不存在这样的结点,则ni是p(x)中的最后一个结点,得到子路径sp(x)=(d,n1,n2,…,ni)。

3.根据权利要求1所述的一种基于支配关系的测试用例生成方法,其特征在于,计算程序中定义-使用对的具体步骤包括:

基于CFG模型,利用如下数据流公式,分析各结点的可达定义:

Out(n)=Gen(n)∪(In(n)-Kill(n))

其中,In(n)和Out(n)分别表示程序结点n的入口处和出口处可达的变量定义集,Gen(n)和Kill(n)分别表示程序结点n的产生定义集和杀死定义集;若程序结点n定义了变量var,则(var,n)∈Gen(n),若程序中存在另外的结点m定义了变量var,则(var,m)∈Kill(n);pred(n)表示CFG中结点n的前驱结点集合;

基于每个程序结点入口处的可达定义,利用如下公式获取程序中关于变量var的所有定义-使用对(var,n,n’):

du(var,n)={n’|(var,n)∈In(n’)∧var∈use(n’)}

其中,du(var,n)表示使用变量var在结点n处定义值的结点集,∧表示“且”的数学符号;use(n’)=cuse(n’)∪puse(n’),cuse(n’)表示结点n’中计算使用的变量集,puse(n’)表示结点n’中谓词使用的变量集。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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