在Postman的脚本中使用pm对象获取接口的请求参数

在Postman的脚本中使用pm对象获取接口的请求参数

1、获取在Query Params中输入的参数

query params页面

在tests中写脚本做后置处理:(此处以设置不同类型用户的全局变量为例)

java 复制代码
// JSON字符串转换成 JavaScript 对象
var data = JSON.parse(responseBody);
//get token
var token = data.data.token;
//get type from Params
var type = pm.request.url.query.get('type');

//print test
console.log(type);
//set globals token
if(type == 'admin'){pm.globals.set("adminToken", token);}
if(type == 'user'){pm.globals.set("userToken", token);}
if(type == 'deliver'){pm.globals.set("deliverToken", token);}

执行后的响应信息:

执行后可在console中可见获取到的print type:

执行后可在environment quick look中可见变量信息:

全局变量的引用(以在header中引用为例)

使用双花括号进行引用:{``{deliverToken}}

执行后的效果:

2、获取在Body中输入的参数

其中tests中的关键:

java 复制代码
//get type from Body
var type = pm.request.body.formdata.get('type');

执行后对应的终端输出信息:

同理可在environment quick look中可见变量信息:

3、pm对象常用用法

java 复制代码
请求body参数个数:
pm.request.body.formdata.count()
新增参数:
pm.request.body.formdata.add({key: "key",value: "value"})
在末尾新增参数:
pm.request.body.formdata.append({key: "key",value: "value"}) 
获取所有body参数:
pm.request.body.formdata.all()
以JSON形式返回参数:
pm.request.body.formdata.toJSON() 
清空body的formdata数据:
pm.request.body.formdata.clear()
获取指定的参数值:
pm.request.body.formdata.get("key")
判断参数是否存在:
pm.request.body.formdata.has("key")
移除指定的参数:
pm.request.body.formdata.remove("key")

END


相关推荐
林开落L3 天前
【项目实战】博客系统完整测试报告(含自动化+性能测试)
python·功能测试·jmeter·自动化·postman·性能测试·xmind
HoneyMoose3 天前
Postman 测试 API 如何上传文件
测试工具·postman
Tangcan-4 天前
博客系统测试报告
功能测试·测试工具·postman
k7Cx7e5 天前
Thinkphp6在Postman中接收不到Post参数的解决办法
测试工具·postman
专吃海绵宝宝菠萝屋的派大星5 天前
使用postman测试自己编写的mcp服务
测试工具·lua·postman
小李云雾6 天前
FastAPI 后端开发:文件上传 + 表单提交
开发语言·python·lua·postman·fastapi
lifewange11 天前
postman接口自动化如何进行参数化
数据库·自动化·postman
妖萌妹儿11 天前
postman怎么做参数化批量测试,测试不同输入组合
开发语言·javascript·postman
尘中客12 天前
Postman进阶实战:优雅调试带 GZIP 压缩与百KB级复杂嵌套 JSON 的 RESTful API
json·postman·restful·php开发·gzip解压
lifewange13 天前
Postman如何实现接口自动化
自动化·lua·postman