今天做接口测试,有一个接口的参数是一个校验 token,会实时更新,开发提供了一个单独返回实时 token 的接口,所以就需要在功能接口使用时调用 token 接口的返回值,作为功能接口的参数来使用。
网上搜了一下,都没有现成的使用说明,刚才研究出来了,就记录下步骤,方便后面的同学。
如果返回 token 的接口的返回值,是标准的 JSON 格式的话,就很简单的两步就行了。
1.token 接口设置全局变量
第一步就是执行 token 接口,并把接口返回值里面的 token 值,赋值给一个全局变量。
赋值操作是写在 Tests 里面的,内容如下:
var jsonData = JSON.parse(responseBody);
pm.globals.set("token", jsonData.token);
下面是我设置的截图:
2.功能接口参数中调用全局变量
第二步当然就是获取前面设置的全局变量的值,作为功能接口的入参了。
获取的实现是写到 Pre-request Scripts 里面实现的,内容如下:
pm.globals.get("token");
同时,要设置接口的 Params,新增一个 Key,Key 的名称为参数的名称,Key 的内容为全局变量名,比如{{token}}。
下面是我设置的具体的截图:
3.顺序执行接口调用
设置完成了,先调用 token 接口,然后调用功能接口就行了,这地方要注意执行顺序,如果反过来的话,接口调用会失败。
另外,如果 token 接口设置的全局变量生效的话,我们还可以通过工具提供的入口来查看具体的 Globals 信息,如同:
好了,上面说了最简单的操作的步骤,还可能有一些其他的情况,比如 token 接口返回值不是标准 JSON 时,还需要对返回值做个处理,比如有些同学不想设置全局变量,那么就需要提前配置一个环境变量供使用等等。
更多惊喜等着我们去发现。
本文首发于公众号「sylan215」,十年测试老兵的原创干货,关注我,涨姿势!
原文地址:http://blog.51cto.com/sylan215/2176035
时间: 2024-10-11 19:50:34