Postman-04-使用进阶

简介: Postman-04-使用进阶

1、使用变量

为什么使用变量?

   如果多个请求中具有相同的URL,但是URL可能会更改,则可以将其存储在变量中。如果URL发生更改,则只需更改变量值,无论使用变量名称的位置如何,它都会在整个集合中反映出来。同样的原则适用于请求中重复数据的任何部分。

1.1快速入门

  • 单击Postman右上角的环境快速查看(眼睛按钮),然后单击Globals旁边的Edit。
  • 添加一个名为的变量my_variable,并将其初始值设置为—Hello单击“保存”并关闭环境模式。
  • 打开一个新的请求选项卡,然后输入https://postman-echo.com/get?var={{my_variable}}URL。将鼠标悬停在变量名称上,您将看到该值。
  • 发送请求。在响应中,您将看到Postman将变量值发送到了API。尝试在“环境”快速查看中更改值,然后再次发送请求

1.2变量作用域

  • Global variables:可以访问集合,请求,测试脚本和环境之间的数据。全局变量在整个工作空间中都可用
  • Collection variables:可在集合中的整个请求中使用,并且独立于环境
  • Environment variables:以针对不同环境定制处理,例如本地开发与测试或生产
  • Local variables:只能在您的请求脚本中访问。局部变量值的范围仅限于单个请求运行,并且在运行完成后不再可用
  • Data variables:来自外部CSV和JSON文件,以定义在通过Newman或Collection Runner运行集合时可以使用的数据集

   注意:如果在两个不同的范围内声明了具有相同名称的变量,则将使用范围最窄的变量中存储的值-例如,如果有一个全局变量和一个局部变量都名为username,则在请求时将使用该局部值运行。 优先级:local > data > environment > collection > global  

1.3定义变量

1.3.1定义新变量

  • 要在请求构建器的任何范围内创建变量,请选择所需的数据,例如在地址,参数,请求头或请求体中
  • 输入一个Name,输入Value,并从下拉列表中选择一个范围。单击设置变量

     

1.3.2定义全局变量和环境变量

  1. 设置变量入口 (快捷键:Ctrl +Alt + E)
  2. 添加环境变量
  3. 添加全局变量

1.3.3定义集合变量

  • 集合右键,选择Edit
  • 选择Variables tab

 

1.4脚本中定义变量

  1. Pre-request Script :请求接口前的准备
  2. Test : 请求接口后的断言

使用pm.globals来定义一个全局变量

pm.globals.set("variable_key", "variable_value");

使用pm.collectionVariables定义集合变量

pm.collectionVariables.set("variable_key", "variable_value");

使用pm.environment定义的环境变量(在当前选择的环境)

pm.environment.set("variable_key", "variable_value");

使用pm.variables定义的局部变量

pm.variables.set("variable_key", "variable_value");

可以unset用来删除变量

pm.environment.unset("variable_key");

1.5使用变量

1.5.1 使用变量

1.5.2 脚本中使用变量

1. //局部变量
2. pm.variables.get("variable_key");
3. 
4. //全局变量
5. pm.globals.get("variable_key");
6. 
7. //集合变量
8. pm.collectionVariables.get("variable_key");
9. 
10. //环境变量
11. pm.environment.get("variable_key");

1.5.3 使用动态变量

  • {{$guid}} :v4样式的guid
  • {{$timestamp}}:当前时间戳(Unix时间戳,以秒为单位)
  • {{$randomInt}}:0到1000之间的随机整数

在预请求或测试脚本中使用动态变量,您需要使用pm.variables.replaceIn(),例如pm.variables.replaceIn('{{$randomFirstName}}')

2、生成代码

  • 点击。。。,选择code
  • 选择代码语言
  • 复制代码

   

3、抓包

  • 代理设置
  • 开启代理

相关文章
|
Web App开发 缓存 前端开发
中高级前端高频面试题分享(一)
中高级前端高频面试题分享
279 0
|
数据库 数据安全/隐私保护
国产化DM达梦数据库 - 用户状态查询、锁定与解锁,“登录失败次数超过限制”问题解决
国产化DM达梦数据库 - 用户状态查询、锁定与解锁,“登录失败次数超过限制”问题解决
2809 0
国产化DM达梦数据库 - 用户状态查询、锁定与解锁,“登录失败次数超过限制”问题解决
|
7月前
|
存储 JSON Java
深入理解 JWT 中 Claims 的设计及其合理性
JWT(JSON Web Token)中 Claims 是存储用户或业务信息的关键部分。JJWT 库通过 `setClaims` 方法支持传入 `Map<String, Object>` 或 `Claims` 对象,确保灵活性与高效性。本文从源码角度剖析 JWT Claims 的设计思想,介绍三种实现方式:使用 `HashMap`、`DefaultClaims` 和逐个添加声明,并分析其合理性。这种基于 Map 的设计符合 JSON 格式特性,易于扩展且性能优越,为开发者提供灵活的选择,满足不同业务需求。
443 2
|
10月前
|
Web App开发 编解码 vr&ar
使用Web浏览器访问UE应用的最佳实践
在3D/XR应用开发中,尤其是基于UE(虚幻引擎)开发的高精度场景,传统终端因硬件局限难以流畅运行高帧率、复杂效果的三维应用。实时云渲染技术,将渲染任务转移至云端服务器,降低终端硬件要求,确保用户获得流畅体验。具备弹性扩展、优化传输协议、跨平台支持和安全性等优势,适用于多种终端和场景,特别集成像素流送技术,帮助UE开发者实现低代码上云操作,简化部署流程,保留UE引擎的强大开发能力,确保画面精美且终端轻量化。
449 17
使用Web浏览器访问UE应用的最佳实践
|
机器学习/深度学习 人工智能 分布式计算
5分钟搭建企业级AI问答知识库
【8月更文挑战第14天】5分钟搭建企业级AI问答知识库
|
SQL 存储 缓存
揭秘SQL中的公用表表达式:数据查询的新宠儿
揭秘SQL中的公用表表达式:数据查询的新宠儿
351 2
|
SQL 数据采集 关系型数据库
在 MySQL 中使用 CTE
【8月更文挑战第11天】
1277 0
在 MySQL 中使用 CTE
|
测试技术 Apache 数据安全/隐私保护
使用 Apache JMeter 事务控制器的详细指南
Apache JMeter 的事务控制器用于组合多个请求成一个事务,以便衡量整体性能。创建测试计划涉及添加线程组、事务控制器和采样器,配置参数如线程数、Ramp-Up时间和循环次数。在事务控制器内,添加HTTP请求模拟用户登录和访问主页等操作。通过勾选选项,包括计时器和处理器时间。添加监听器如汇总报告和查看结果树来分析结果,从而评估系统性能瓶颈。事务控制器对于测试复杂业务流程的性能非常有用。
|
JavaScript
Vue3指令:搜索框输入防抖实现(附源码)
Vue3指令:搜索框输入防抖实现(附源码)
554 0
|
运维 应用服务中间件 nginx
运维(27)-部署流量代理(Nginx+haproxy)
运维(27)-部署流量代理(Nginx+haproxy)
261 0