本说明书涉及软件安全测试,尤其涉及一种测试用例生成的方法、装置及设备。
背景技术:
1、自数据库诞生以来,数据库管理系统(database management system,dbms)被广泛用于如医疗保健、金融、零售、邮寄等行业。数据库管理系统作为管理用户数据的桥梁,其安全性十分的重要,尤其是数据库管理系统中存在的堆栈溢出等传统安全漏洞,一旦被发现,攻击者可能通过这些漏洞窃取、伪造用户数据,也可能直接导致数据库系统拒绝服务,给用户造成巨大的损失。
2、模糊测试是一种漏洞挖掘技术,它通常将无效的、非预期的或随机的数据作为目标程序的输入,通过监测输入后软件的异常状况来发现软件的安全问题。数据库模糊测试变异方式主要包括基于生成的变异方式和基于变异的生成方式。其中,基于生成的变异方式需要预先定义一些生成规则,这些生成规则使得生成的测试用例能够探索的程序空间十分有限;基于变异的生成方式需要随机选取一些种子作为变异的基础,该生成方式主要关注序列内部的变异,使得生成的测试用例代码覆盖率不足。因此,目前亟需提供一种更优的测试用例生成方案。
技术实现思路
1、本说明书实施例提供一种测试用例生成的方法、装置及设备,以提供一种符合数据库相关人员预期的测试用例生成方案。
2、第一方面,本说明书一个或多个实施例提供一种测试用例生成的方法,包括:对目标测试用例集合对应的语法结构序列中位置相邻的相邻语法结构对进行变异处理,生成所述相邻语法结构对对应的变异语法结构序列,所述语法结构序列为去除被测试对象中的语义数据后的所述语法结构序列所形成的序列;从所述变异语法结构序列中,筛选出所述目标测试用例集合未覆盖的测试路径对应的候补语法结构序列;将所述候补语法结构序列和所述语法结构序列进行合成处理,得到合成语法结构序列;使用待测试对象中的语义数据对所述合成语法结构序列进行数据填充处理,生成针对所述待测试对象的测试用例。
3、第二方面,本申请实施例提供了一种测试用例生成的装置,包括:对目标测试用例集合对应的语法结构序列中位置相邻的相邻语法结构对进行变异处理,生成所述相邻语法结构对对应的变异语法结构序列,所述语法结构序列为去除被测试对象中的语义数据后的所述语法结构序列所形成的序列;从所述变异语法结构序列中,筛选出所述目标测试用例集合未覆盖的测试路径对应的候补语法结构序列;将所述候补语法结构序列和所述语法结构序列进行合成处理,得到合成语法结构序列;使用待测试对象中的语义数据对所述合成语法结构序列进行数据填充处理,生成针对所述待测试对象的测试用例。
4、第三方面,本申请实施例提供了一种电子设备,该电子设备包括:处理器,以及被安排成存储计算机可执行指令的存储器,在所述可执行指令被执行时,能够使得所述处理器:对目标测试用例集合对应的语法结构序列中位置相邻的相邻语法结构对进行变异处理,生成所述相邻语法结构对对应的变异语法结构序列,所述语法结构序列为去除被测试对象中的语义数据后的所述语法结构序列所形成的序列;从所述变异语法结构序列中,筛选出所述目标测试用例集合未覆盖的测试路径对应的候补语法结构序列;将所述候补语法结构序列和所述语法结构序列进行合成处理,得到合成语法结构序列;使用待测试对象中的语义数据对所述合成语法结构序列进行数据填充处理,生成针对所述待测试对象的测试用例。
5、第四方面,本说明书实施例提供一种存储介质,用于存储计算机程序,所述计算机程序能够被处理器执行以实现以下流程:对目标测试用例集合对应的语法结构序列中位置相邻的相邻语法结构对进行变异处理,生成所述相邻语法结构对对应的变异语法结构序列,所述语法结构序列为去除被测试对象中的语义数据后的所述语法结构序列所形成的序列;从所述变异语法结构序列中,筛选出所述目标测试用例集合未覆盖的测试路径对应的候补语法结构序列;将所述候补语法结构序列和所述语法结构序列进行合成处理,得到合成语法结构序列;使用待测试对象中的语义数据对所述合成语法结构序列进行数据填充处理,生成针对所述待测试对象的测试用例。
1.一种测试用例生成的方法,包括:
2.根据权利要求1所述的方法,所述对目标测试用例集合对应的语法结构序列中位置相邻的相邻语法结构对进行变异处理,生成所述相邻语法结构对对应的变异语法结构序列,包括:
3.根据权利要求2所述的方法,所述目标语法结构与所述待被调整语法结构不同,所述根据所述待被调整语法结构和/或所述目标语法结构,对所述相邻语法结构对进行变异,得到所述变异语法结构序列,包括:
4.根据权利要求2所述的方法,所述根据所述待被调整语法结构和/或所述目标语法结构,对所述相邻语法结构对进行变异,得到所述变异语法结构序列,包括:
5.根据权利要求2所述的方法,所述根据所述待被调整语法结构和/或所述目标语法结构,对所述相邻语法结构对进行变异,得到所述变异语法结构序列,包括:
6.根据权利要求2所述的方法,所述对目标测试用例集合对应的语法结构序列中位置相邻的相邻语法结构对进行变异处理,生成所述相邻语法结构对对应的变异语法结构序列,包括:
7.根据权利要求1所述的方法,所述将所述候补语法结构序列和所述语法结构序列进行合成处理,得到合成语法结构序列,包括:
8.根据权利要求7所述的方法,所述将所述有效语法结构序列和所述语法结构序列进行合成,得到所述合成语法结构序列,包括:
9.一种测试用例生成的装置,包括:
10.一种电子设备,包括: