在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


相关推荐
编程乐学(Arfan开发工程师)17 小时前
42、响应处理-【源码分析】-浏览器与PostMan内容协商完全适配
java·spring boot·后端·测试工具·lua·postman
鱼鱼说测试1 天前
postman基础
测试工具·postman
程序员杰哥2 天前
Postman常见问题及解决方法
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·postman
天才测试猿2 天前
Postman接口测试之postman设置接口关联,实现参数化
自动化测试·软件测试·python·测试工具·职场和发展·接口测试·postman
代码续发3 天前
postman自动化测试
测试工具·postman
哆咪学计科5 天前
postman工具使用
测试工具·postman
白皎5 天前
立志成为一名优秀测试开发工程师(第十一天)—Postman动态参数/变量、文件上传、断言策略、批量执行及CSV/JSON数据驱动测试
json·postman
sanzk5 天前
IoTGateway项目生成Api并通过swagger和Postman调用
测试工具·postman
哈哈哈哈哈哈哈哈哈...........8 天前
【软件】在 macOS 上安装 Postman
测试工具·macos·postman
mizuhokaga8 天前
Postman 发送 SOAP 请求步骤 归档
测试工具·postman