本发明专利技术公开了一种生成参数化查询测试用例的方法及装置,属于业务测试领域。该方法包括:获取待查询数据;所述待查询数据包括至少一组参数名和所述参数名对应的参数值;按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;根据所述待查询参数组生成对应的参数化查询测试用例。本发明专利技术中,实现了快速生成代码简洁、参数完备的自动化测试用例。的自动化测试用例。的自动化测试用例。
【技术实现步骤摘要】
一种生成参数化查询测试用例的方法及装置
[0001]本专利技术实施例涉及业务测试
,尤其涉及一种生成参数化查询测试用例的方法及装置。
技术介绍
[0002]参数化查询测试用例是指对同一接口,通过传入不同参数,而无需重复编写需求请求达到测试不同参数组合输入时的接口表现的目的。
[0003]但现有的参数化查询测试用例的生成过程中存在参数传入的数组值是写死,如果被测系统参数有变化,则用例会出错;并且输入参数和预期结果都需要人工编写维护,从而导致用例编写及维护的成本过高。
技术实现思路
[0004]本专利技术实施例提供一种生成参数化查询测试用例的方法及装置,以解决现有的参数写死不便于修改以及用例编写及维护的成本过高问题。
[0005]为了解决上述技术问题,本专利技术是这样实现的:第一方面,本专利技术实施例提供了一种生成参数化查询测试用例的方法,包括:获取待查询数据;所述待查询数据包括至少一组参数名和所述参数名对应的参数值;按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;根据所述待查询参数组生成对应的参数化查询测试用例。
[0006]可选的,还包括:执行所述参数化查询测试用例,查询所述至少一个待查询参数组,得到查询结果;将所述查询结果与预期结果进行比对,得到比对结果;所述预期结果根据所述参数名对应的参数值得到。
[0007]可选的,所述预设规则包括以下至少一项:以一个参数名为一个待查询数据组、随机选择两个参数名组合为一个待查询数据组和随机选择多个参数名组合为一个待查询数据组。
[0008]可选的,所述按照预设规则随机选择所述待查询数据中的参数名进行组合,包括:调用Python自动组合功能进行随机组合,实现按照预设规则随机选择所述待查询数据中的参数名进行组合。
[0009]可选的,所述根据所述待查询参数组生成对应的参数化查询测试用例,包括:调用pytest工具,根据所述待查询参数组生成对应的参数化查询测试用例。
[0010]第二方面,本专利技术实施例提供了一种生成参数化查询测试用例的装置,包括:获取模块,用于获取待查询数据;所述待查询数据包括至少一组参数名和所述参数名对应的参数值;
组合模块,用于按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;生成模块,用于根据所述待查询参数组生成对应的参数化查询测试用例。
[0011]可选的,还包括:执行模块,用于执行所述参数化查询测试用例,查询所述至少一个待查询参数组,得到查询结果;比对模块,用于将所述查询结果与预期结果进行比对,得到比对结果;所述预期结果根据所述参数名对应的参数值得到。
[0012]可选的,所述预设规则包括以下至少一项:以一个参数名为一个待查询数据组、随机选择两个参数名组合为一个待查询数据组和随机选择多个参数名组合为一个待查询数据组。
[0013]可选的,所述按照预设规则随机选择所述待查询数据中的参数名进行组合,包括:调用Python自动组合功能进行随机组合,实现按照预设规则随机选择所述待查询数据中的参数名进行组合。
[0014]第三方面,本专利技术实施例提供了一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面中任一项所述的生成参数化查询测试用例的方法中的步骤。
[0015]第四方面,本专利技术实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面中任一项所述的生成参数化查询测试用例的方法中的步骤。
[0016]在本专利技术实施例中,通过自动生成参数及预期结果快速生成大量自动化用例,并且自动生成无需写死、维护性好的输入和输出参数,使得执行效率高,减少人工成本。
附图说明
[0017]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本专利技术实施例提供的一种生成参数化查询测试用例的方法的流程示意图;图2为本专利技术实施例提供的一种生成参数化查询测试用例的方法的总体流程示意图;图3为本专利技术实施例提供的一种生成参数化查询测试用例的装置的结构示意图;图4为本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0018]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0019]请参考图1,本专利技术实施例提供了一种生成参数化查询测试用例的方法,包括:
步骤11:获取待查询数据;所述待查询数据包括至少一组参数名和所述参数名对应的参数值;步骤12:按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;步骤13:根据所述待查询参数组生成对应的参数化查询测试用例。
[0020]本专利技术实施例中,通过自动生成参数及预期结果快速生成大量自动化用例,并且自动生成无需写死、维护性好的输入和输出参数,使得执行效率高,减少人工成本。
[0021]本专利技术实施例中,在步骤11中,获取待查询数据,所述待查询数据可以通过随机查询或者构造一条数据,从所述数据中提取所述数据的详细参数名和所述参数名对应的参数值;例如:该数据为:"address":"测试数据详细地址";"city": "北京市";"district":"东城区";其中,前半部分"address"、"city"和"district"为参数名;对应的后半部分"测试数据详细地址"、北京市"和"东城区"为所述参数名对应的参数值;并将所述数据作为全局变量进行加密保存以便后续并发执行及对比校验结果。
[0022]在步骤12中,按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;其中,通过调用Python自动组合功能进行随机组合,实现按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;所述预设规则包括以下至少一项:以一个参数名为一个待查询数据组、随机选择两个参数名组合为一个待查询数据组和随机选择多个参数名组合为一个待查询数据组;例如:当前查询参数名按照两两组合,即参数字段名为(city,district);动态生成完备的查询组合参数,可作为遍历测试,全自动排列组合,无需人工参与,实现参数构造自动化。
[0023]在步骤13中,调用pytest工具,根据所述待查询参数组生成对应的参数化查询测试用例。
[0024]本专利技术实施例中,快速生成大量自动化用例,且能够动态自动生成便于维护的输入和输出参数;自动化用例结果校验参数多,有效性高;并且大量自动生成的自动化测试用例本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种生成参数化查询测试用例的方法,其特征在于,包括:获取待查询数据;所述待查询数据包括至少一组参数名和所述参数名对应的参数值;按照预设规则随机选择所述待查询数据中的参数名进行组合,得到至少一组待查询参数组;根据所述待查询参数组生成对应的参数化查询测试用例。2.根据权利要求1所述的生成参数化查询测试用例的方法,其特征在于,还包括:执行所述参数化查询测试用例,查询所述至少一个待查询参数组,得到查询结果;将所述查询结果与预期结果进行比对,得到比对结果;所述预期结果根据所述参数名对应的参数值得到。3.根据权利要求1所述的生成参数化查询测试用例的方法,其特征在于,所述预设规则包括以下至少一项:以一个参数名为一个待查询数据组、随机选择两个参数名组合为一个待查询数据组和随机选择多个参数名组合为一个待查询数据组。4.根据权利要求1所述的生成参数化查询测试用例的方法,其特征在于,所述按照预设规则随机选择所述待查询数据中的参数名进行组合,包括:调用Python自动组合功能进行随机组合,实现按照预设规则随机选择所述待查询数据中的参数名进行组合。5.根据权利要求1所述的生成参数化查询测试用例的方法,其特征在于,所述根据所述待查询参数组生成对应的参数化查询测试用例,包括:调用pytest工具,根据所述待查询参数组生成对应的参数化查询测试用例。6.一种生成参数...
【专利技术属性】
技术研发人员:凌景卫,邹永强,杨晖,
申请(专利权)人:云账户技术天津有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。