[发明专利]测试用例生成方法、装置、设备及存储介质在审
申请号: | 202211639066.6 | 申请日: | 2022-12-20 |
公开(公告)号: | CN115858375A | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 衷璐洁;孙丽娜 | 申请(专利权)人: | 首都师范大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F18/2415 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 吴会英;黄健 |
地址: | 100048 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试 生成 方法 装置 设备 存储 介质 | ||
本申请提供一种测试用例生成方法、装置、设备及存储介质。包括:获取待测试程序,并采用动态符号执行技术确定待测试程序的至少一条原始路径约束;基于原始路径约束生成对应的至少一条派生路径约束;构建原始路径约束及派生路径约束对应的特征向量;采用约束求解器对原始路径约束进行求解,确定原始路径约束的类型及原始路径约束对应的测试用例;利用原始路径约束对应的特征向量及对应的类型构建预设分类器对应的训练样本,对预设分类器进行训练,获得训练后的分类器;采用训练后的分类器根据派生路径约束对应的特征向量确定派生路径约束对应的类型,并采用约束求解器对类型为可达派生路径约束进行求解,以获得可达派生路径约束对应的测试用例。
技术领域
本申请涉及软件测试技术,尤其涉及一种测试用例生成方法、装置、设备及存储介质。
背景技术
近几年,计算机软件已经广泛应用于生活和工作中,计算机软件为了满足实际情况中的需求,所以计算机软件的规模和复杂程度不断增加。计算机软件的规模实际上会导致软件中包含的漏洞数量增加,为了保证计算机软件的质量,所以研发人员加大了对软件测试的关注。
现有技术中采用符号执行技术获得原始路径约束,具体表现为:在符号执行过程中,将待测试程序中包含的变量的符号值输入至待测试程序中,在待测试程序中进行搜索,获得对应的原始路径约束,将对应的原始路径约束输入至约束求解器中求解,最终确定出该对应的原始路径约束是否为有效原始路径约束,若为有效原始路径约束,则生成对应的测试用例。
然而,现有技术符号执行技术每次只能生成一条路径约束,所以在预设时间内生成的测试用例的数量较少,所以对待测试程序的覆盖率低;同时,现有技术中生成的路径约束也有不可达路径约束,仍然要使用约束求解器对该不可达路径约束进行求解,所以浪费约束求解器的计算资源,导致求解的效率低,生成测试用例效率低。
发明内容
本申请提供一种测试用例生成方法、装置、设备及存储介质,用以解决在预设时间内生成的测试用例的数量较少,对待测试程序的覆盖率低;浪费约束求解器的计算资源,导致求解的效率低以及生成测试用例效率低问题。
第一方面,本申请提供一种测试用例生成方法,包括:
获取待测试程序,并采用动态符号执行技术确定所述待测试程序的至少一条原始路径约束;
基于所述原始路径约束生成对应的至少一条派生路径约束;
构建所述原始路径约束及派生路径约束对应的特征向量;
采用约束求解器对所述原始路径约束进行求解,以确定所述原始路径约束的类型及原始路径约束对应的测试用例,所述原始路径约束的类型包括:可达原始路径约束和不可达原始路径约束;
利用原始路径约束对应的特征向量及对应的类型构建预设分类器对应的训练样本,以形成训练样本集,并采用所述训练样本集对所述预设分类器进行训练,以获得训练后的分类器;
采用训练后的分类器根据所述派生路径约束对应的特征向量确定所述派生路径约束对应的类型,并采用约束求解器对类型为可达派生路径约束进行求解,以获得可达派生路径约束对应的测试用例。
第二方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中所述的方法。
第三方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面中所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于首都师范大学,未经首都师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211639066.6/2.html,转载请声明来源钻瓜专利网。