[发明专利]基于遗传方法和符号执行的组合加速测试用例生成方法有效
申请号: | 201811084639.7 | 申请日: | 2018-09-18 |
公开(公告)号: | CN109344057B | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 杨顺昆;苟晓冬;李红曼;边冲;刘文静;林欧雅;李大庆;佘志坤 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京慧泉知识产权代理有限公司 11232 | 代理人: | 王顺荣;唐爱华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种基于遗传方法和符号执行的组合加速测试用例生成方法,步骤如下:1:获取软件测试的待测程序;2:进行选择、变异和交叉操作;获取终止覆盖率,记为第一覆盖率;3:获取第一测试用例可达到的路径,记为第一路径集合;获取待测程序的所有可执行路径,记为第二路径集合;4:对比第一、二路径集合,确定出第一测试用例未覆盖路径记为第三路径集合;5:求解出目标路径对应的取值组合;6:测试第二测试用例的终止覆盖率,记为第二覆盖率;7:结合第一、二覆盖率进行评估,在不达标下重复步骤2‑6;本发明实现了当前路径的符号提取及所有条件的取值组合,从而实现遗传方法与符号执行的组合以及迭代,生成质量高的用例,且有高的覆盖率。 | ||
搜索关键词: | 基于 遗传 方法 符号 执行 组合 加速 测试 生成 | ||
【主权项】:
1.一种基于遗传方法和符号执行的组合加速测试用例生成方法,其特征在于:其实施步骤如下:步骤1:获取软件测试的待测程序;步骤2:基于遗传方法生成第一测试用例,根据适应度函数进行选择、变异和交叉操作,直到达到种群进化的终止条件;获取所述第一测试用例的终止覆盖率,记为第一覆盖率;步骤3:获取所述第一测试用例能达到的路径,记为第一路径集合;获取所述待测程序的所有能执行路径,记为第二路径集合;步骤4:对比所述第一路径集合和所述第二路径集合,确定出所述第一测试用例未覆盖路径记为第三路径集合;步骤5:基于所述第三路径集合确定一条目标路径,使用符号执行方法,求解出所述目标路径对应的取值组合;步骤6:基于所述取值组合,使用遗传方法生成第二测试用例,测试所述第二测试用例的终止覆盖率,记为第二覆盖率;步骤7:结合所述第一覆盖率和所述第二覆盖率,对所述测试用例进行评估,在覆盖率不达标的情况下重复所述步骤2‑6;通过以上步骤,实现了通过符号执行这一方法对遗传方法所生成用例中未覆盖的路径进行当前路径的符号提取,并求解符号执行中满足约束集合的所有条件的取值组合,并基于该取值组合使遗传方法能够继续执行生成用例,从而实现遗传方法与符号执行的组合以及迭代,进而能够在短的时间内,生成质量高的用例,且有很高的覆盖率。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201811084639.7/,转载请声明来源钻瓜专利网。
- 上一篇:一种测试方法以及测试装置
- 下一篇:一种小程序自动化测试方法