Postman使用

Postman使用

Pre-request Script

参考:

可以请求、集合或文件夹中添加Pre-request Script,在请求运行之前执行JavaScript

如设置变量值、参数、Header和正文数据,也可以使用Pre-request Script来调试代码,如将日志输出到Postman Console

执行顺序如下:

对于集合中的每个请求,脚本将始终根据相同的层次结构运行。 集合级脚本(如果有)将首先运行,然后是文件夹级脚本(如果有),然后是请求级脚本(如果有)。 请注意,此执行顺序适用于预请求脚本和测试脚本。

已例子来说,请求时可能会带上sign签名信息,而sign签名信息通常是url中请求参数按特定规则生成的

这个时候,就可以使用Pre-request Script了

如下的Post请求中,Header中需要带有sign等参数:

javascript 复制代码
//uuid
var uuid = "";
pm.environment.set('uuid', uuid);

//获取当前时间戳
var timestamp = new Date().getTime();
//添加timestamp到环境变量
pm.environment.set('timestamp', timestamp);
// console.log("timestamp: " + timestamp)

//随机字符串
var noncestr = require('uuid');
var mynoncestr = noncestr.v4().replace(/-/g, '');
pm.environment.set('mynoncestr', mynoncestr);
// console.log("mynoncestr: " + mynoncestr);
....

//json
var jsonObj = ..........;
var data = JSON.stringify(jsonObj);
console.log(data);
var signStr =  uuid等字符串拼接..........;
console.log("signStr: " + signStr);
//sign
var sign = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(signStr))
console.log(sign);
pm.environment.set('sign', sign);

然后再Header中设置如下:

获取url中的请求参数

参考:

javascript 复制代码
var query = {};
pm.request.url.query.all().forEach((param) => {
    query[param.key] = param.value;
});
console.log("query = " + JSON.stringify(query));
相关推荐
哈哈哈哈哈哈哈哈哈...........1 天前
【软件】在 macOS 上安装 Postman
测试工具·macos·postman
mizuhokaga1 天前
Postman 发送 SOAP 请求步骤 归档
测试工具·postman
not coder3 天前
Postman 是什么
测试工具·postman
‌Freiheit3 天前
[PyTest-案例]
接口·postman
Forworder3 天前
【测试】Bug和用例
selenium·测试工具·单元测试·测试用例·bug·postman·ab测试
空城机5 天前
时代变了,我选择ApiFox替代Postman
测试工具·postman
jack@london5 天前
Postman调用deepseek API接口
测试工具·lua·postman
.似水6 天前
Postman基础操作
测试工具·postman
茶本无香9 天前
HTTP协议接口三种测试方法之-postman
postman·http接口测试
水银嘻嘻13 天前
03 接口自动化-精通Postman之接口鉴权,接口Mock,接口加解密以及接口签名Sign
运维·自动化·postman