在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


相关推荐
半个俗人2 天前
3.postman全局变量和环境变量
测试工具·postman
星空2 天前
postman复习
测试工具·postman
半个俗人4 天前
2.postman断言
测试工具·postman
半个俗人6 天前
1.postman的基础使用方法
测试工具·postman
007张三丰8 天前
软件测试专栏(7/20):接口测试全攻略:Postman+Newman实现API自动化
自动化·lua·接口测试·postman·api测试·newman
se-tester25 天前
JMeter、Postman 和 SoapUI 在做接口测试上的优势和缺点
测试工具·jmeter·接口测试·postman·soapui
脑花儿1 个月前
Dify平台聊天助手 API调用案例
api·postman·dify
测试老哥1 个月前
如何使用Postman做接口测试?
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
weixin_440730501 个月前
05接口测试-01接口理论+02posman的使用
功能测试·测试工具·postman