我们在使用postman做接口测试的时候,会经常遇到接口参数依赖的问题,例如调取登录接口的时候,需要先获取登录后的token值,而每次请求返回的token值又不一样,那么这种情况下,要实现接口的自动化,可以用postman中设置环境变量这个功能。
在postman中,可以利用tests将接口返回的response设置为环境变量,供后续接口使用(类似参数化的概念)
在返回Body中获取环境变量的语法:
var json = JSON.parse(responseBody); //获取body中返回的所有参数
postman.setEnvironmentVariable("token",json.data.token);
//把返回参数中的uuid设置为环境变量(json.data.uuid表示按层级寻找)
tests["token"] = json.data.token; //验证返回值
这样就能把登录后生成的token设置为环境变量,供后续登录接口的调用了。
在返回header中获取环境变量的语法:
var data = postman.getResponseHeader("Date");
postman.setEnvironmentVariable("Date",data);
tests["Data"] = data;
测试此接口之后就会在自动更新环境变量,后续接口也就可以直接引用
在需要的接口直接引用环境变量就可以了(在header和body里都是可以用{{var}}引用的)
下面推荐一个比较好用的 chrome浏览器的json格式化插件:
JSON-Handle
下载地址:http://jsonhandle.sinaapp.com/
安装方法:插件下载后,在浏览器输入:chrome://extensions/。将下载后的文件拖入 chrome浏览器即可
使用介绍:
就拿上面返回的body里的json数据来做介绍
把他放入插件的输入框内,点击OK即可格式化json,对应字段所生成的路径我们在上面设置环境变量时也会用到。