测试数据的生成方法和装置、存储介质及电子设备制造方法及图纸

技术编号:30029707 阅读:19 留言:0更新日期:2021-09-15 10:19
本发明专利技术公开了一种测试数据的生成方法和装置、存储介质及电子设备。其中,该方法包括:获取目标接口的第一请求参数集合,获取目标接口的历史请求信息,根据历史请求信息,确定第一请求参数集合中的请求参数的参数取值,得到目标测试数据的方式,通过获取请求参数集合,再获取到的历史请求消息来自动生成目标测试数据,替代了相关技术中通过单元测试得到测试数据的方案,达到了优化测试数据的目的,从而实现了提高测试数据的生成效率、降低测试参数的构造成本,扩大测试数据的应用范围的技术效果,本发明专利技术解决了相关技术中存在的测试数据的生成效率较低的技术问题。生成效率较低的技术问题。生成效率较低的技术问题。

【技术实现步骤摘要】
测试数据的生成方法和装置、存储介质及电子设备


[0001]本专利技术涉及计算机领域,具体而言,涉及一种测试数据的生成方法和装置、存储介质及电子设备。

技术介绍

[0002]目前的相关技术中,测试平台或工具生成的接口请求参数往往是空值或固定默认值,而在调试接口的过程中需要构造一组有效的请求数据,但当参数结构复杂时,参数种类繁多,因此,参数构造的效率难以保证。
[0003]并且,在服务接口开发测试过程中,可能存在多种执行分支,相关技术中一般是使用单元测试或接口测试来获取测试数据,会存在无法充分覆盖到多种执行分支,难以对服务接口进行充分的覆盖测试,进而发现漏洞问题,造成相关技术中存在的测试数据的生成效率较低的技术问题。
[0004]针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

[0005]本专利技术实施例提供了一种测试数据的生成方法和装置、存储介质及电子设备,以至少解决相关技术中存在的测试数据的生成效率较低的技术问题。
[0006]根据本专利技术实施例的一个方面,提供了一种测试数据的生成方法,包括:获取目标接口的第一请求参数集合,其中,所述第一请求参数集合用于通过目标服务的所述目标接口请求所述目标服务;获取所述目标接口的历史请求信息,其中,所述历史请求信息包括所述目标接口的多个历史请求参数集合以及对应的参数取值,每个所述历史请求参数集合用于通过所述目标接口请求所述目标服务;根据所述历史请求信息,确定所述第一请求参数集合中的请求参数的参数取值,得到目标测试数据,其中,所述目标测试数据包括所述第一请求参数集合以及对应的参数取值,所述目标测试数据用于通过所述目标接口对所述目标服务的请求进行测试。
[0007]可选地,所述获取所述目标接口的历史请求信息,包括:获取所述目标接口的历史测试信息,其中,所述历史请求信息包括所述历史测试信息,所述历史测试信息包括所述目标接口的多个历史测试参数集合以及对应的参数取值,每个所述历史测试参数集合用于通过所述目标接口对所述目标服务的请求进行测试;和/或获取所述目标接口的历史实际请求信息,其中,所述历史请求信息包括所述历史实际请求信息,所述历史实际请求信息包括所述目标接口的多个历史实际请求参数集合以及对应的参数取值,每个所述历史实际请求参数集合为在通过所述目标接口对所述目标服务进行请求时实际使用的参数集合。
[0008]可选地,所述根据所述历史请求信息,确定所述第一请求参数集合中的请求参数的参数取值,得到目标测试数据,包括:在所述历史请求信息中查找与所述第一请求参数集合中的请求参数匹配的请求参数;根据查找到的请求参数,确定所述第一请求参数集合中的请求参数的参数取值,得到所述目标测试数据。
[0009]可选地,所述在所述历史请求信息中查找与所述第一请求参数集合中的请求参数匹配的请求参数,包括:分别获取每个所述历史请求参数集合与所述第一请求参数集合都具有的参数,得到N个子参数集合,其中,N为所述历史请求参数聚合的数量且N为大于1的自然数,每个所述子参数集合包括一个所述历史请求参数集合与所述第一请求参数集合都具有的参数;根据所述N个子参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数。
[0010]可选地,所述分别获取每个所述历史请求参数集合与所述第一请求参数集合都具有的参数,得到N个子参数集合,包括:通过以下步骤获取所述N个子参数集合中的第i个子参数集合:将第i个历史请求参数集合中的参数的参数名称序列化成第i个字符串;将所述第i个字符串与目标字符串进行比较,得到所述第i个字符串与所述目标字符串中相同的子字符串,其中,所述目标字符串为将所述第一请求参数集合中的参数的参数名称序列化成的字符串;将所述第i个子参数集合确定为包括所述第i个历史请求参数集合中与所述相同的子字符串对应的参数。
[0011]可选地,所述根据所述N个子参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数,包括:根据每个所述子参数集合中的参数的数量,在所述N个历史请求参数集合中确定出目标历史请求参数集合;根据所述目标历史请求参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数。
[0012]可选地,根据每个所述子参数集合中的参数的数量,在所述N个历史请求参数集合中确定出目标历史请求参数集合,包括:根据每个所述子参数集合中的参数的数量,在所述N个历史请求参数集合中确定出所述目标历史请求参数集合;其中,在所述N个历史请求参数集合中,所述目标历史请求参数集合对应的所述子参数集合中的参数的数量最多,或者所述目标历史请求参数集合对应的请求所述目标服务的结果为成功,且,在所述N个历史请求参数集合中的M个历史请求参数集合中,所述目标历史请求参数集合对应的所述子参数集合中的参数的数量最多,其中,所述M个历史请求参数集合中的每个历史请求参数集合对应的请求所述目标服务的结果为成功,M小于或等于N。
[0013]可选地,所述根据所述目标历史请求参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数,包括:在所述目标历史请求参数集合包括所述第一请求参数集合中的全部请求参数的情况下,将与所述第一请求参数集合中的请求参数匹配的请求参数确定为等于所述目标历史请求参数集合中包括的所述全部请求参数;和/或在所述目标历史请求参数集合包括所述第一请求参数集合中的第一部分请求参数的情况下,在所述历史请求信息中查找与第二部分请求参数匹配的请求参数,其中,所述第二部分请求参数为所述第一请求参数集合中除所述第一部分请求参数之外的请求参数;将与所述第一请求参数集合中的请求参数匹配的请求参数确定为包括:所述目标历史请求参数集合中包括的所述第一部分请求参数,以及查找到的与所述第二部分请求参数匹配的请求参数。
[0014]可选地,所述在所述历史请求信息中查找与第二部分请求参数匹配的请求参数,包括:在所述第二部分请求参数为一个请求参数的情况下,在所述N个历史请求参数集合中确定包括所述一个请求参数的P个历史请求参数集合,其中,P小于或等于N;在所述P个历史请求参数集合中选择一个历史请求参数集合包括的所述一个请求参数,作为所述与第二部分请求参数匹配的请求参数;和/或在所述第二部分请求参数为多个请求参数的情况下,在
所述N个历史请求参数集合中确定包括所述多个请求参数的Q个历史请求参数集合,其中,Q小于或等于N;在所述Q个历史请求参数集合中选择一个历史请求参数集合包括的所述多个请求参数,作为所述与第二部分请求参数匹配的请求参数。
[0015]可选地,所述方法还包括:在所述历史请求信息中查找不到与所述第二部分请求参数匹配的请求参数的情况下,在预设的取值范围内为所述第一请求参数集合中的所述第二部分请求参数设置对应的参数取值。
[0016]可选地,所述根据查找到的请求参数,确定所述第一请求参数集合中的请求参数的参数取值,得到所述目标测试数据,包括:将所述第一请求参数集合中的请求参数的参数取值设置为等于所述查找到的请求参数的参数取值。
[0017]可选地,所述方法还本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试数据的生成方法,其特征在于,包括:获取目标接口的第一请求参数集合,其中,所述第一请求参数集合用于通过目标服务的所述目标接口请求所述目标服务;获取所述目标接口的历史请求信息,其中,所述历史请求信息包括所述目标接口的多个历史请求参数集合以及对应的参数取值,每个所述历史请求参数集合用于通过所述目标接口请求所述目标服务;根据所述历史请求信息,确定所述第一请求参数集合中的请求参数的参数取值,得到目标测试数据,其中,所述目标测试数据包括所述第一请求参数集合以及对应的参数取值,所述目标测试数据用于通过所述目标接口对所述目标服务的请求进行测试。2.根据权利要求1所述的方法,其特征在于,所述获取所述目标接口的历史请求信息,包括:获取所述目标接口的历史测试信息,其中,所述历史请求信息包括所述历史测试信息,所述历史测试信息包括所述目标接口的多个历史测试参数集合以及对应的参数取值,每个所述历史测试参数集合用于通过所述目标接口对所述目标服务的请求进行测试;和/或获取所述目标接口的历史实际请求信息,其中,所述历史请求信息包括所述历史实际请求信息,所述历史实际请求信息包括所述目标接口的多个历史实际请求参数集合以及对应的参数取值,每个所述历史实际请求参数集合为在通过所述目标接口对所述目标服务进行请求时实际使用的参数集合。3.根据权利要求1所述的方法,其特征在于,所述根据所述历史请求信息,确定所述第一请求参数集合中的请求参数的参数取值,得到目标测试数据,包括:在所述历史请求信息中查找与所述第一请求参数集合中的请求参数匹配的请求参数;根据查找到的请求参数,确定所述第一请求参数集合中的请求参数的参数取值,得到所述目标测试数据。4.根据权利要求3所述的方法,其特征在于,所述在所述历史请求信息中查找与所述第一请求参数集合中的请求参数匹配的请求参数,包括:分别获取每个所述历史请求参数集合与所述第一请求参数集合都具有的参数,得到N个子参数集合,其中,N为所述历史请求参数聚合的数量且N为大于1的自然数,每个所述子参数集合包括一个所述历史请求参数集合与所述第一请求参数集合都具有的参数;根据所述N个子参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数。5.根据权利要求4所述的方法,其特征在于,所述分别获取每个所述历史请求参数集合与所述第一请求参数集合都具有的参数,得到N个子参数集合,包括:通过以下步骤获取所述N个子参数集合中的第i个子参数集合:将第i个历史请求参数集合中的参数的参数名称序列化成第i个字符串;将所述第i个字符串与目标字符串进行比较,得到所述第i个字符串与所述目标字符串中相同的子字符串,其中,所述目标字符串为将所述第一请求参数集合中的参数的参数名称序列化成的字符串;将所述第i个子参数集合确定为包括所述第i个历史请求参数集合中与所述相同的子字符串对应的参数。
6.根据权利要求4所述的方法,其特征在于,所述根据所述N个子参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数,包括:根据每个所述子参数集合中的参数的数量,在所述N个历史请求参数集合中确定出目标历史请求参数集合;根据所述目标历史请求参数集合,确定与所述第一请求参数集合中的请求参数匹配的请求参数。7.根据权利要求6所述的方法,其特征在于,根据每个所述子参数集合中的参数的数量,在所述N个历史请求参数集合中确定出目标历史请求参数集合,包括:根据每个所述子参数集合中的参数的数量,在所述N个历史请求参数集合中确定出所述目标历史请求参数集合;其中,在所述N个历史请求参数集合中,所述目标历史请求参数集合对应的所述子参数集合中的参数的数量最多,或者所述目标历史请求参数集合对应的请求所述目标服务的结果为成功,且,在所述N个历史请求参数集合中的M个历史请求参...

【专利技术属性】
技术研发人员:欧阳灿刘广大赵丽娟龙腾
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1