在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 天前
如何用Postman做接口自动化测试
测试工具·postman
瑞瑞绮绮2 天前
玩转PostMan之调试天气接口-心知天气 API
测试工具·postman
Codebill4 天前
API 响应体加密场景下的调试实践:Postman 的局限与 Apipost 的优化
postman·apipost·api调试
lichong9514 天前
API开发工具postman、国内xxapi和SmartApi的性能对比
eclipse·intellij-idea·api·postman·visual studio·apipost·apifox
小白编码5 天前
【postMan / apifox 文件上传】
测试工具·postman
测试老哥6 天前
6个步骤实现Postman接口压力测试
自动化测试·软件测试·测试工具·测试用例·接口测试·压力测试·postman
lichong95110 天前
【混合开发】Android+Webview+VUE播放视频之视频解析工具mediainfo-Macos
android·macos·架构·vue·音视频·api·postman
深兰科技11 天前
深兰科技AI问诊助手走访打浦桥街道社区卫生服务中心
人工智能·windows·github·postman·visual studio·深兰科技·ai问诊
cxyll123412 天前
postman 用于接口测试,举例
开发语言·lua·接口测试·postman