Postman 变量了解一下

Postman变量是在Postman工具中使用的一种特殊功能,用于存储和管理动态数据。它们可以用于在请求的不同部分、环境或集合之间共享和重复使用值。

Postman变量有以下几种类型:

1、环境变量(Environment Variables): 

环境变量是在Postman的环境中定义的全局变量,可在不同请求之间共享。通过设置不同环境,可以轻松切换不同的配置(如开发环境、测试环境、生产环境等)。可以在环境配置中设置和访问环境变量,并在请求中使用{ {variable_name}}的语法引用它们。

2、全局变量(Global Variables): 

全局变量是在Postman的全局配置中定义的变量,可以在任何环境或集合中使用。全局变量对所有请求都可见,无需在每个环境中重新定义。可以通过在全局配置中添加变量并在请求中使用{ {variable_name}}的语法来访问全局变量。

3、集合变量(Collection Variables): 

集合变量是在Postman的集合中定义的变量,用于在集合的不同请求之间共享。集合变量与特定集合相关联,只在该集合中可用。类似地,可以通过在集合中定义变量并在请求中使用{ {variable_name}}的语法来访问集合变量。

4、局部变量(Local Variables): 

局部变量是在Postman的单个请求中定义的变量,只在该请求的范围内有效。可以通过在请求中的“Tests”脚本部分使用pm.variables.set("variable_name", value)来设置局部变量,并通过pm.variables.get("variable_name")来获取其值。

各种类型变量的详细使用教程:

 1、环境变量(Environment Variables):

  • 在Postman界面左上角的下拉菜单中选择“Manage Environments”来管理环境。

  • 在环境管理器中,可以创建不同的环境配置(如开发、测试、生产等)并定义相应的变量。

  • 添加变量:点击某个环境配置并在右侧的"CURRENT VALUE"字段中添加键值对。

  • 在请求中使用变量:在请求的URL、请求头或请求体中使用{ {variable_name}}语法引用环境变量。

  • 切换环境:通过在Postman界面顶部的环境下拉菜单中选择不同的环境配置来切换环境。

2、全局变量(Global Variables):

  • 在Postman界面上选择“Manage Environments”旁边的“Manage Globals”来管理全局变量。

  • 在全局变量管理器中,可以添加和管理全局变量。

  • 添加变量:点击"Add"按钮并填写键值对。

  • 在请求中使用变量:与使用环境变量类似,可以在请求的URL、请求头或请求体中使用{ {variable_name}}语法引用全局变量。

3、集合变量(Collection Variables):

  • 在Postman界面左侧的集合列表中选择集合,并在右侧的“Variables”选项卡中管理集合变量。

  • 添加变量:点击"Add"按钮并填写键值对。

  • 在请求中使用变量:与使用环境变量和全局变量类似,可以在请求的URL、请求头或请求体中使用{ {variable_name}}语法引用集合变量。

4、局部变量(Local Variables):

  • 打开某个请求,在请求编辑器中选择“Tests”选项卡。

  • 在“Tests”脚本中,使用pm.variables.set("variable_name", value)来设置局部变量。

  • 在请求中使用变量:在请求的URL、请求头或请求体中使用{ {variable_name}}语法引用局部变量。

使用这些变量能够带来以下优势:

重用性:变量允许在不同的请求之间共享和重复使用数据,避免了重复输入和维护大量的硬编码值。

灵活性:通过使用变量,可以轻松地在不同的环境、集合或全局配置中切换和管理数据,方便进行测试和开发工作。

动态性:变量允许根据需要动态地更改值,通过使用预先定义的逻辑或脚本,可以根据其他变量或响应的内容来更新变量的值。

综上,使用Postman变量的步骤包括定义变量、引用变量以及根据类型选择适当的管理方式。使用这些变量,可以轻松地在不同请求、环境和集合之间共享和重复使用动态数据。在Postman的文档中也提供了更详细的说明和示例,可供进一步参考和学习。

既然看到这里,在收藏的同时,也请不吝啬的点个赞呗!期待 ~

 

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

<think>好的,用户想了解如何在Postman中使用局部变量。首先,我需要回忆一下Postman变量的不同类型。根据引用内容,局部变量的作用域比较小,只在当前请求的脚本中使用。那用户可能需要具体的步骤,比如在Pre-request Script或Tests中设置局部变量。 接下来,我得确认如何正确设置局部变量。根据引用[3],使用pm.variables.set()方法可以设置局部变量。比如在脚本里写pm.variables.set("var_name", "value"),这样就能在当前请求中使用这个变量。需要注意的是,局部变量只在当前请求的脚本中有效,不会影响其他请求或者集合。 然后,用户可能想知道怎么在请求中引用局部变量。应该是用双花括号包裹变量名,比如{{var_name}}。不过要确保变量是在脚本中设置的,否则可能会找不到。比如在请求URL、Headers或者Body里都可以这样引用。 另外,用户可能对局部变量其他变量区别不太清楚。根据引用[2],全局变量适用于所有集合,环境变量适用于所选环境,而局部变量仅作用于当前脚本。所以需要解释清楚它们的不同应用场景,避免混淆。 可能还需要举一个例子,让用户更容易理解。比如在Pre-request Script里设置一个局部变量token,然后在请求头中使用它,这样用户可以看到具体的应用流程。同时,在Tests脚本中读取这个变量,验证是否正确设置。 还要提醒用户局部变量的作用域问题,比如在同一个请求的不同脚本部分(Pre-requestTests)中都可以访问,但其他请求无法使用。如果需要跨请求,可能需要使用全局或环境变量。 最后,整理步骤,分点说明设置使用的方法,并给出示例代码。确保用户能够按照步骤操作,同时理解每个步骤的作用。如果有常见问题,比如变量未生效,可能需要检查作用域或语法是否正确。</think>在Postman中,局部变量是作用域最小的变量类型,仅作用于当前请求的脚本中。以下是具体使用方法: ### 一、局部变量设置方法 1. **通过脚本设置** 在请求的`Pre-request Script`或`Tests`脚本中,使用以下语法: ```javascript pm.variables.set("变量名", "变量值"); ``` 示例: ```javascript pm.variables.set("token", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"); pm.variables.set("page_size", 10); ``` 2. **脚本中动态生成** 可结合JavaScript逻辑生成动态值: ```javascript const timestamp = new Date().getTime(); pm.variables.set("nonce", timestamp.toString()); ``` ### 二、局部变量调用方式 1. **在请求参数中引用** 使用`{{变量名}}`格式直接调用: ```python # URL参数示例 GET https://api.example.com/data?page=1&size={{page_size}} # Header示例 Authorization: Bearer {{token}} ``` 2. **在脚本中读取** 通过`pm.variables.get()`获取值: ```javascript // Tests脚本中验证响应状态码 pm.test("Status code is 200", function () { pm.response.to.have.status(200); console.log("当前token值:" + pm.variables.get("token")); }); ``` ### 三、局部变量特性 - **作用域限制**:仅在当前请求的`Pre-request Script``Tests`脚本中有效 - **优先级**:高于全局变量环境变量(同名时优先使用局部变量)[^2] - **生命周期**:随请求结束自动销毁 ### 四、典型应用场景 1. **临时存储接口响应数据** ```javascript // Tests脚本中提取响应token const responseJson = pm.response.json(); pm.variables.set("next_token", responseJson.next_page_token); ``` 2. **参数化测试数据** ```javascript // Pre-request Script中设置随机参数 pm.variables.set("order_id", "OD" + Math.floor(Math.random()*10000)); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值