(五)postman实现接口自动化测试--参数化

出于两点原因(目前自己遇到的两点,之后遇到其他情况,再维护)

1:一个接口的请求结果,需要在另一个接口中调用(关于顺序的问题,通过程序中拖拽位置即可实现)

2:随机数

有疑问的加V:zx1187463903

响应结果调用参数化

1:在Tests中,获取响应结果,然后将所需参数设置为环境变量参数或者全局变量。

​​在这里插入图片描述

var data = JSON.parse(responseBody);
var auth=data.auth;
var auth2=data.auth2;
pm.environment.set("auth", data.auth);   //设置环境变量
pm.globals.set("auth2",auth2);			//设置全局变量

请求中,调用方式如下:{{变量名}}
在这里插入图片描述

断言参数化

有些参数,我们加在了环境变量中,那么如果需要在接口响应中判断,传入的数据和返回的数据是否一致,那么如何在Tests中,使用参数呢?
首先需要先声明一个变量来获取目标值,

var mobile=pm.environment.get("username");

然后判断,返回的值与环境变量的值是否一致。

pm.expect(jsonData["basic"]["mobile"]).to.eql(mobile);

随机数

我也是通过设置成环境变量的方式来添加随机数的,注意是在Pre-request Script中设置。
在这里插入图片描述

pm.environment.set("phonenumber", _.random(10000000000, 11999999999))

调用的时候同理,就不再赘述。

这里可以查看对应的变量值。
在这里插入图片描述

上面两个变量的设置,一个是在Pre-request Script中设置,一个是在Tests中设置,前一个主要是设置请求中需要用的参数,后者则是对reponse值进行抓取。
如果你也搞定了,开心的同时请小编喝个咖啡也极好的呀。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43574761/article/details/100694540