如果你因失去太阳而流泪,那你也将失去群星了。大家好,在 API 测试的广袤世界中,Postman 犹如一座闪耀的灯塔,为我们指引着前行的方向。而其中的全局变量、集合变量和环境变量,更是如同隐藏的宝藏,蕴含着巨大的力量和价值。当我们深入探索这些变量的奥秘时,就仿佛开启了一扇通往高效测试和精准控制的大门。它们在 Postman 的生态中扮演着至关重要的角色,让我们的测试工作变得更加灵活、智能且富有条理。现在,就让我们一同踏上这场关于 Postman 变量的精彩旅程,去揭开它们神秘的面纱,领略其独特的魅力与效用。
一、变量类型介绍
变量可以使大家在请求或脚本中存储和重复使用其值,通过将值保存在变量中,便于其在集合,环境或请求中进行引用,对于做接口测试来说,是一个非常重要的功能。
1、全局变量
全局变量在整个 Postman 工作区中都可用。它们可以用于存储一些通用的、跨多个请求或集合都可能需要使用的值,比如通用的认证信息、基础路径等,有助于保持测试的一致性和可维护性,它的作用域是最大的。
2、集合变量
主要在特定的集合内起作用。可以用来定义与该集合相关的一些特定数据或配置,方便在该集合的多个请求中共享和使用特定于集合的信息,使集合内的测试更具针对性和整体性。
3、环境变量
环境变量与特定的环境相关联。不同的环境(如开发环境、测试环境、生产环境等)可以有不同的环境变量设置。这使得我们可以轻松地在不同环境下切换并执行相应的测试,模拟不同场景下的请求和数据,对于确保 API 在不同环境中的正确运行非常重要。
它们的作用域范围从大到小依次排列为:全局变量 --> 集合变量 --> 环境变量。
当在几个不同的范围内都申明了相同的变量时,则会优先使用范围最小的变量。
二、定义变量
1、设置全局变量
点击左侧菜单的Environments,点击“Globals”,进入全局变量设置页面。
2、设置环境变量
点击左侧菜单的Environments,点击‘+’按钮进行创建环境,然后为新创建的环境起个名字,在右侧创建该环境下的变量以及变量的初始值。
如果有多个环境,则可以选择生效的环境,例如:开发环境、正式环境
3、设置集合变量
方式一(系统级别):
选择一个接口集合(被测系统级别),点击右侧的“...”,点击“Edit”,然后在右侧页面中点击“Variables”,如下图所示:
然后再这个页面中定义变量名称与初始值即可。
此处定义了两个变量:
var1变量的初始值为1
var2变量的初始值为2
方式二(模块级别):
选择一个接口集合(被测系统模块级别),点击右侧的“...”,点击“Edit”,然后在右侧页面中点击“Scripts”,如下图所示:
在Scripts中定义创建变量的代码如下:
// 创建一个环境变量
pm.environment.set("variable_key", "variable_value");
// 创建一个全局变量
pm.globals.set("variable_key", "variable_value");
// 创建一个集合变量
pm.collectionVariables.set("variable_key", "variable_value");
如图所示:
三、使用变量
上面我们定义好变量之后,接下来就可以使用变量了。需要注意的是,在不同的位置使用变量,编写的规则也是不一样的。
如果在请求参数中获取变量,无论是获取全局变量、环境变量,还是集合变量,获取的方式都是一样的编写规则:{{变量名}}
请求参数包含:URL、Params、Authorization、Headers、Body
如果在编写代码的位置(Tests、Pre-requests Script)获取不同类型的变量,则编写的代码各不相同,具体如下:
// 使用一个环境变量
pm.environment.get("variable_key");
// 使用一个全局变量
pm.globals.get("variable_key");
// 使用一个集合变量
pm.collectionVariables.get("variable_key");
以下是一个示例:
以上就是关于Postman工具中变量的设置与使用,希望能够给大家带来一定的帮助~