一、概述
在Postman 中,变量让我们可以保存值并在不同的API 中根据需要使用它们。我们可以通过将它们传递给集合、环境或任何请求来引用这些值。它基本上使使用这些变量更有效地访问存储的值变得更容易。我们还可以与多个队友协作或使用这些变量在Postman 上设置动态工作流程。
在本文中,我们将深入了解变量、它们的类型以及如何将它们嵌入到我们的API 中。
2.什么是变量?
变量象征着数据表示,让我们无需在任何需要的地方手动输入即可访问值。当我们必须在多个地方使用相同的值时,它们会很有用。一些实例包括基本URL、令牌和路径变量。此外,使用它们还使请求更加灵活,因为更改变量将在所有使用这些变量的地方自动进行更改。
我们可以在Postman 中将变量定义为键值对。key 定义了变量名,允许我们使用这个key 直接访问它的值。
此外,还可以使用环境来设置一组变量。这些变量将根据环境具有不同的值。
让我们深入研究变量并了解不同的变量范围。
2.1。变量范围
有多个范围可以让我们在具有不同值的各种环境中处理API 的开发和测试。下面是从最宽到最窄的范围定义的变量范围:
全局变量:这些变量可以在整个工作区中访问,并且在Postman 中具有最广泛的范围。它们可以在工作空间内的多个请求和集合中的任何地方使用。
集合变量:这些变量只能在某个集合内部访问。它们可用于集合中的所有请求。此外,它们不会根据所选环境而改变。
环境变量:这些变量让我们根据不同的环境确定工作范围。它们随着我们正在处理的环境的变化而变化,例如本地环境、登台或生产环境。
数据变量:这些类型的变量是外部变量,在使用Collection Runner 运行集合时定义数据集。我们可以从CSV 或JSON 文件中提取它。它们具有在请求或集合执行后不会持续存在的当前值。
局部变量:这些变量也称为临时变量,只能通过请求脚本访问。它们仅在当前请求或集合之前具有范围。执行完成后,它们将不再可用。
2.2.变量类型
全局变量和环境变量可以根据它们的类型进一步分类。以下是我们如何配置它们:
默认类型:变量默认属于这些类型。这些显示为没有附加属性的纯文本。
秘密类型:这些变量隐藏所有工作区的初始值和当前值,类似于密码。它们让我们防止任何无意泄露敏感数据。
3. 使用范围定义变量
如上所述,我们可以定义多种类型和范围的变量。可以在请求生成器中的任何范围内定义变量。
首先,我们选择文本并单击Set as a variable
。完成后,我们必须将其存储为新变量。然后,我们为该值输入一个键,并从Postman 中可用的不同范围中进行选择:
3.1。将响应主体设置为变量
请求响应正文中的值也可以设置为变量并在集合中进一步使用。这有助于按顺序运行多个请求并创建特定流。
首先,让我们选择要保存的文本,然后按right-click
或Control-click
按钮将其存储为变量。
完成后,我们必须从可能的选项中选择相关范围,即环境、本地或全局,并命名变量以保存它:
3.2.定义全局变量
下面看一下Postman中设置全局变量的步骤:
我们首先在全局变量部分点击
Add a new variable
,然后输入变量名直接存储为全局变量。另一个选项是通过选择Global 选项作为Type 来选择值并存储变量。
一旦完成,我们不应该忘记标记 保存并确认更改。
我们还可以通过以下步骤下载全局变量并与他人共享:
首先,让我们去Postman 并在侧边栏中选择环境类型为Global。
然后,我们可以单击将变量导出到文件的
Export
按钮。我们可以通过单击来存储文件一旦准备好
Save
在系统上,并根据需要共享。
3.3.定义环境变量
我们可以通过以下步骤在Postman 中保存环境变量:
首先,我们点击
Add a new variable
,然后输入变量名称。在保存变量之前,我们可以选择变量类型作为环境。
该变量需要指定初始值和当前值。
完成后,我们必须点击 保存以确认更改。
3.4.定义集合变量
Postman 还提供了添加集合变量并根据需要使用它们的机会。
我们必须在侧边栏中单击并选择Collections
。完成后,让我们选择Variables
选项卡来存储集合变量:
3.5 在脚本中定义变量
与在集合、环境或全局中定义变量类似,我们也可以在请求脚本中以编程方式设置变量。
所有这些方法都将(variable_key
,variable_value
)作为输入:
pm.globals
:该方法用于定义请求脚本中的全局变量,例如pm.globals.set(“variable_key”, “variable_value”);
pm.collectionVariables
:我们可以用这个方法定义一个范围为'collection'的变量,例如,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
:此方法可用于删除已设置的变量。unset 可以根据它们的范围使用上述变量实例定义,例如pm.environment.unset(“variable_key”, “variable_value”);
3.6 在脚本中使用变量
我们使用上述方法将变量存储在脚本中。因此,我们可以使用以下方法检索它们的当前值:
pm.variables.get(“variable_key”)
:这将访问任何范围内的变量,包括本地。pm.globals.get(“variable_key”)
:这可以访问全局变量pm.collectionVariables.get(“variable_key”)
:这可以访问集合变量。pm.environment.get(“variable_key”)
:这可以访问环境变量。
在这里,我们可以使用variable_key
检索值。该对象表示范围级别,get()
方法检索该值。
pm.variables.get()
方法还提供了在不实际影响脚本功能的情况下更改变量范围的选项。它返回当前具有最高优先级的变量。
4. 使用变量
现在,我们已经定义了不同的变量范围并学习了如何将它们存储在Postman 中。让我们看看如何在我们的请求路径和正文中使用这些变量。
为了在整个Postman 中引用变量,我们应该在变量名周围使用双花括号。它会自动从定义的不同变量中获取值。这是所有Postman 的标准,不依赖于变量类型和范围:
{{studentName}}
此外,运行CURL 或点击请求会解析变量并使用当前值更新变量。以下请求URL 引用了该变量:
http://localhost:8080/get?student_name={{studentName}}
假设studentName
是“John”。Postman 从其变量中检索值并发送当前存储在那里的任何值。因此,在通过Postman 发出上述请求时,它会自动将其转换为请求:
http://localhost:8080/get?student_name=John
5. 结论
在本教程中,我们使用Postman 变量使用GUI 模式进行基本初始化。
此外,我们了解了它们的类型和范围。此外,我们还查看了可以初始化它们的不同位置,例如URI、请求正文和标头。显然,这让我们无需多次初始化相同的值来节省时间和空间。
0 评论