Postman 接口测试技巧

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  

参数化:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容