0


postman脚本应用

批量操作

需求背景

一个管理系统上需要删除很多数据,但是不支持批量删除,需要手动一条一条数据进行删除,数据大概有几百条。于是通过postman自动进行批量删除。

操作步骤

1、使用postman调用拿到所有数据的ID,通过调整分页大小实现(当然也可以通过postman以及脚本去实现)

2、从浏览器中拿到管理系统对应的cookie信息(根据各自系统情况配置,有的系统使用token)当然也可使用postman调用登录接口将响应信息设置到变量中,cookie则从变量中获取。

具体实现

1、建立一个接口集

2、建立一个请求放到接口集中

这里的{{id}} 为从变量获取ID

3、在请求头中配置好cookie

4、在接口集合上配置变量以及编写脚本

var ids = pm.collectionVariables.get("ids")
console.log(ids)
var index = pm.globals.get("index");

index=Number.parseInt(index)+1
if(index>=ids.length){
    console.log("所有运行结束")
    index=0
}
pm.globals.set("index", index);
var id= ids[index]
pm.globals.set("id", id);
console.log("index添加之后:",index,id)

该代码主要意思为 从集合变量中获取ids变量,从全局变量获取index,如果index大于等于ids数组长度则赋值为0,并重新设置到全局变量。获取id并设置到全局变量。

注:目前使用定一个变量存储数据,其实也可以通过文件方式实现。

selectFile可以不用定义参数,postman会自动遍历文件中的数据。

请求参数使用脚本增加签名

如图在请求一些接口时需要根据调用方提供的 账号秘钥信息生成签名。在调用时需要传入账号以及签名时间戳等。

具体脚本如下:

配置的变量

具体脚本

var moment = require('moment'); 
// 获取账号
var account = pm.collectionVariables.get("account");
console.log(pm.collectionVariables.get("account"))
// 获取秘钥
var key=pm.collectionVariables.get("key");
// 获取时间
var timestamp=moment().format("YYYY-MM-DD HH:mm:ss"); 
// 生成签名
var signStr=account+timestamp+key;
console.log("signStr",signStr)

var sign = CryptoJS.MD5(signStr).toString();
console.log("sign",sign)
pm.collectionVariables.set("sign",sign);
pm.collectionVariables.set("timestamp",timestamp);
标签: postman 测试工具

本文转载自: https://blog.csdn.net/qq_32444437/article/details/135616797
版权归原作者 拾光少年 所有, 如有侵权,请联系我们删除。

“postman脚本应用”的评论:

还没有评论