本发明属于自动化测试,具体而言,涉及动态接口参数关联方法、装置及电子设备。
背景技术:
1、在接口自动化测试过程中,很多功能在测试之前都需要准备数据,很多接口数据依赖于其他接口的返回数据;如果在自动化测试用例中固定测试数据,在执行时如果该数据已被修改或删除,则会造成执行失败的情况。
技术实现思路
1、为了解决上述技术问题,本发明提供动态接口参数关联方法。
2、第一方面,本发明提供了动态接口参数关联方法,包括:
3、利用excel存储测试用例,并在测试用例中设置一个存储字段来存储提取接口返回数据的路径字段提取函数的表达式;
4、设置excel读取函数,在每个测试用例执行之前使用excel读取函数读取测试用例;
5、在接口请求的数据中,对需要动态替换的字段设置标记符;
6、设置数据处理函数对接口返回数据进行处理,并提供路径表达式对测试用例中设置标记符的字段进行提取;数据处理函数用于将接口返回数据中的调度单号提取出来并将调度单号的字段保存;
7、利用动态属性设置函数将提取出的指定接口字段数据设置为一个独立类的类属性,并利用pytest的前后置夹具函数,对每个测试类进行数据初始化,清理类属性释放空间;
8、在接口测试用例时通过参数替换函数对接口数据进行正则匹配,查找需要进行替换的参数的关键值,并将查找结果存入列表;
9、利用调度单号的字段通过参数替换函数对待替换的关键值进行动态替换,得到目标参数;
10、通过设置断言来判断接口执行的正确性,对接口返回数据的正确性进行验证。
11、第二方面,本发明提供了动态接口参数关联装置,包括存储单元、读取单元、标记单元、处理单元、设置单元、匹配单元、获取单元、替换单元与验证单元;
12、存储单元,用于利用excel存储测试用例,并在测试用例中设置一个存储字段来存储提取接口返回数据的路径字段提取函数的表达式;
13、读取单元,用于设置excel读取函数,在每个测试用例执行之前使用excel读取函数读取测试用例;
14、标记单元,用于在接口请求的数据中,对需要动态替换的字段设置标记符;
15、处理单元,用于设置数据处理函数对接口返回数据进行处理,并提供路径表达式对测试用例中设置标记符的字段进行提取;数据处理函数用于将接口返回数据中的调度单号提取出来并将调度单号的字段保存;
16、设置单元,用于利用动态属性设置函数将提取出的指定接口字段数据设置为一个独立类的类属性,并利用pytest的前后置夹具函数,对每个测试类进行数据初始化,清理类属性释放空间;
17、匹配单元,用于在接口测试用例时通过参数替换函数对接口数据进行正则匹配,查找需要进行替换的参数的关键值,并将查找结果存入列表;
18、替换单元,用于利用调度单号的字段通过参数替换函数对待替换的关键值进行动态替换,得到目标参数;
19、验证单元,用于通过设置断言来判断接口执行的正确性,对接口返回数据的正确性进行验证。
20、第三方面,本发明提供一种电子设备,包括:
21、处理器和存储器;
22、所述存储器,用于存储计算机操作指令;
23、所述处理器,用于通过调用所述计算机操作指令,执行动态接口参数关联方法。
24、在上述技术方案的基础上,本发明还可以做如下改进。
25、进一步,读取函数基于pandas库进行二次封装,读取对应表格页的数据,并以字典的形式进行数据返回。
26、进一步,设obj为接口请求的响应数据,设路径表达式为expr,则路径字段提取函数的表达式为jsonpath(obj, expr)。
27、进一步,利用动态属性设置函数将提取出的指定接口字段数据设置为一个独立类的类属性,设动态属性设置函数为setattr,类为handleattribute,类属性为key,类属性对应的值为value,则动态属性设置函数为setattr(handleattribute, key, value)。
28、进一步,在替换函数内,通过正则表达式,查询出所有设置标记符的字符串,得到需要动态替换的参数。
29、进一步,通过设置断言和自定义断言函数,对接口返回结果进行验证和判断。
30、本发明的有益效果是:
31、(1)本发明能够实现接口测试数据的自动处理和参数替换,解决了传统接口测试中测试数据异常和准确性的问题;
32、(2)本发明能够提高测试数据的准确性,通过自动化处理和参数替换,保证测试数据是当前系统中存在的真实数据,降低了数据异常和错误的风险;
33、(3)本发明通过定制的标记和参数替换函数,快速定位和替换需要处理的数据,提高测试的效率和可维护性;
34、(4)本发明通过设置断言和自定义断言函数,对接口返回结果进行验证和判断,确保接口执行的正确性;
35、(5)本发明基于pytest测试框架,具有良好的灵活性和可扩展性,可以与其他测试框架和工具进行集成和扩展使用。
1.动态接口参数关联方法,其特征在于,包括:
2.根据权利要求1所述动态接口参数关联方法,其特征在于,excel读取函数基于pandas库进行二次封装,读取对应表格页的数据,并以字典的形式进行数据返回。
3. 根据权利要求1所述动态接口参数关联方法,其特征在于,设obj为接口请求的响应数据,设路径表达式为expr,则路径字段提取函数的表达式为jsonpath(obj, expr)。
4. 根据权利要求1所述动态接口参数关联方法,其特征在于,利用动态属性设置函数将提取出的指定接口字段数据设置为一个独立类的类属性,设动态属性设置函数为setattr,类为handleattribute,类属性为key,类属性对应的值为value,则动态属性设置函数为setattr(handleattribute, key, value)。
5.根据权利要求1所述动态接口参数关联方法,其特征在于,在替换函数内,通过正则表达式,查询出所有设置标记符的字符串,得到需要动态替换的参数。
6.根据权利要求1所述动态接口参数关联方法,其特征在于,通过设置断言和自定义断言函数,对接口返回结果进行验证和判断。
7.动态接口参数关联装置,其特征在于,包括存储单元、读取单元、标记单元、处理单元、设置单元、匹配单元、获取单元、替换单元与验证单元;
8.一种电子设备,其特征在于,包括: