Postman是做接口测试的,但是很多接口并不是直接就能测,有的需要一些预处理。比如说身份认证,需要传递一个token。如果做网页测试,一般打开登陆界面的时候就会生成一个token,如果返回值是json格式,用Postman从中提取值是很简单的,在Tests中输入:
var jsonData =JSON.parse(responseBody);//获取body中返回的所有参数
pm.environment.set("appKey",jsonData.data.keys);//把返回参数中的keys设置为环境变量
如果token在返回的header里,也很简单:
var value = postman.getResponseHeader("Access-Token");
pm.environment.set("Access-Token",value);
如果token在返回值的body中,呵呵,网上并没有适合小白看的清晰的解决方法。我花了好长好长好长时间才找到这么两行小字:
//转换XML body为JSON对象
var jsonObject = xml2Json(responseBody);
那我的思路就有了:将html转换成json,再从json中提取token不就简单了。
依然还是老办法,拿出我的终极武器——redmine来测试。登陆页面的返回值大概是这样的,我们要提取的是