Postmanpostman软件测试

Postman 接口测试技巧

2020-01-08  本文已影响0人  云层_

postman提取返回值,如token等

1、js脚本如图1,提取的返回值调用(写在需要的地方如header/body等)如图2  ---修改后一定要保存哈!

//postman提取返回值

//设置环境变量

var jsonData =JSON.parse(responseBody);  //获取body中返回的所有参数,并存入变量jsonData

postman.setEnvironmentVariable("userToken",jsonData.data.token); //把返回参数中的keys(如token)设置为环境变量

//断言

tests["msg"] = jsonData.msg === "操作成功"; 

tests["Status code is 200"] = responseCode.code === 200;  //等同于 jsonData.code

图1:返回值提取  +  断言

//postman提取返回值

//设置环境变量

var jsonData2 =JSON.parse(responseBody);  //获取body中返回的所有参数,并存入变量jsonData

//断言

tests["msg"] = jsonData2.msg === "修改成功"; 

tests["Status code is 200"] = responseCode.code === 200;  //等同于 jsonData.code

图1:主要是进行断言 图2:{{***}}

2、执行

3、遇到问题:token过期、或者JSON parse error( "msg": "JSON parse error: Cannot deserialize value of type `java.lang.Integer` from String ),如下图:

---------原因:返回值(如上面的token或引用的变量)引用时,未和获取返回值的用例一起执行导致。

 --------解决:第一个用例是登录后从响应体重获取token,第二个用例是修改密码前要用token,两个用例不能分开分别send执行,否则会报token过期。所以要一批run执行,如步骤2。

token过期 JSON parse error

参数化

如下图(参数化前)所示,可以把服务器IP地址或者用户名密码等参数化

headers:    Content-Type:application/json  

参数化:

上一篇 下一篇

猜你喜欢

热点阅读