[发明专利]测试用例的生成方法、系统、终端设备以及存储介质在审
申请号: | 202110886345.1 | 申请日: | 2021-08-03 |
公开(公告)号: | CN113672503A | 公开(公告)日: | 2021-11-19 |
发明(设计)人: | 张伟;夏羿;赵杨 | 申请(专利权)人: | 中移(杭州)信息技术有限公司;中国移动通信集团有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 张志江 |
地址: | 311100 浙江省杭州市余*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试 生成 方法 系统 终端设备 以及 存储 介质 | ||
本发明公开了一种测试用例的生成方法、系统、终端设备以及计算机存储介质。该测试用例的生成方法通过根据预设的句式模板生成测试用例,其中,所述句式模板基于正则表达式规则设定生成;构造符合测试覆盖准则的适应度函数,并根据所述适应度函数计算所述测试用例针对被测软件程序的适应度值;根据所述适应度值迭代寻找最优解,以确定所述测试用例中的最优测试用例。传统自动化测试用例的生成方式,本发明基于正则表达式设定句式模板,从而可利用该句式模板自动化进行测试用例的批量生成,此外,还能够在提高测试用例对于被测软件程序的覆盖率,从而确保所生成测试用例的有效性。
技术领域
本发明涉及软件测试技术领域,尤其涉及一种测试用例的生成方法、系统以及终端设备。
背景技术
随着现代科技的进步以及计算机的快速发展,各种各样的计算机软件成为了生活中的必需品,随之,人们对日常使用的软件的质量要求也逐渐变高。
软件测试是检验软件质量的重要技术手段,而设计测试用例是软件测试的重要环节和核心难点。设计测试用例自动生成将可以大大提升软件测试的效率,同时可以节约大量的人力和物力。因此,测试用例自动生成问题的研究课题具有重要的理论价值和实用意义。
目前,测试用例自动化生成通常需要考虑的是测试用例集的自动化生成和所生成测试用例的有效率。尽管现有存在一些基于算法的自动化测试用例生成方案,但是,现有方案无法实现测试用例的批量生产,且所生成测试用例对于被测软件来说,覆盖率低导致有效性较差。
发明内容
本发明的主要目的在于提供一种测试用例的生成法、系统、终端设备以及计算机存储介质,旨在解决现有方案无法实现测试用例的批量生产,且所生成测试用例对于被测软件来说,覆盖率低导致有效性较差的技术问题。
为实现上述目的,本发明提供一种测试用例的生成方法,所述测试用例的生成方法包括:
根据预设的句式模板生成测试用例,其中,所述句式模板基于正则表达式规则设定生成;
构造符合测试覆盖准则的适应度函数,并根据所述适应度函数计算所述测试用例针对被测软件程序的适应度值;
根据所述适应度值迭代寻找最优解,以确定所述测试用例中的最优测试用例。
优选地,所述句式模板包括主句模板和子句模板,所述根据预设的句式模板生成测试用例的步骤,包括:
调用所述主句模板匹配符合所述正则表达式规则的字符串句式生成主句测试用例;以及,
调用所述子句模板匹配符合所述正则表达式规则的字符串句式生成子句测试用例;
针对同一场景下的所述主句测试用例和所述子句测试用例进行排列交叉组合以形成多轮测试用例集。
优选地,在所述针对同一场景下的所述主句测试用例和所述子句测试用例进行排列交叉组合以形成多轮测试用例集的步骤之前,还包括:
计算相互两个所述主句测试用例或者相互两个所述字句测试用例的余弦相似度;
确定所述余弦相似度是否大于或者等于预设阈值;
若是,在所述主句测试用例或者所述子句测试用例中去除任意用例后,继续计算所述余弦相似度直至确定到所述余弦相似度小于所述预设阈值。
优选地,所述构造符合测试覆盖准则的适应度函数的步骤,包括:
获取所述被测软件程序的分支节点;
根据所述分支节点结合预设的分支距离函数构造得到符合所述测试覆盖准则的适应度函数。
优选地,所述根据所述适应度函数计算所述测试用例针对被测软件程序的适应度值的步骤,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移(杭州)信息技术有限公司;中国移动通信集团有限公司,未经中移(杭州)信息技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110886345.1/2.html,转载请声明来源钻瓜专利网。