欢迎大家订阅【软件测试】 专栏,开启你的软件测试学习之旅!
文章目录
- 前言
- 1 变量类型
- 2 环境变量(Environment Variables)
- 3 全局变量(Global Variables)
- 4 环境变量与全局变量的区别
前言
为了提高测试的灵活性与可维护性,Postman 提供了变量机制,使得测试过程中的参数可以灵活地处理和替换。Postman中的变量分为环境变量和全局变量,这两类变量有着不同的作用范围和使用场景。在接口测试过程中,选择使用环境变量还是全局变量通常取决于具体的测试需求。本章将详细介绍Postman中环境变量和全局变量的概念、使用方法及其区别。
1 变量类型
在Postman中,变量可以用来存储常见的参数(如API地址、认证Token、请求头信息等),使得接口请求更加灵活和可复用。变量的使用格式为 {{variableName}}
,通过这种方式可以在请求中动态替换参数。
Postman提供了几种类型的变量,最常见的两种是:
- 环境变量(Environment Variables):环境变量是针对特定的环境或工作空间设置的变量,通常用于在不同的环境中(如开发、测试、生产等)切换不同的参数。
- 全局变量(Global Variables):全局变量在Postman中的作用范围是全局的,它们在任何请求中都可以被访问和使用。
2 环境变量(Environment Variables)
①基本概念
环境变量是指在Postman的特定环境下所定义的变量,通常用于不同的环境配置之间切换。例如,在不同的测试环境中(开发环境、测试环境、生产环境等),可能会使用不同的服务器地址、认证信息、API密钥等。
Postman允许你创建多个环境,每个环境下可以定义不同的环境变量。你可以通过切换环境来动态改变变量的值,方便进行跨环境的API测试。
②创建步骤
- 打开Postman,点击右上角的环境选择框,选择 “Manage Environments”(管理环境)。
- 点击 “Add” 按钮,创建一个新的环境。
- 在新的环境中,你可以添加多个变量,每个变量由名称和值组成。
- 点击 “Save” 保存环境设置。
③使用步骤
在请求中使用环境变量时,使用 {{variableName}}
的格式。
例如,如果在环境中定义了一个 ip1
变量,你可以在请求的URL中使用 {{ip1}}
来替换这个变量。
④应用场景
- 跨环境测试:可以为开发环境、测试环境、生产环境分别创建不同的环境变量,确保每个环境中的配置正确。
- 动态参数传递:对于在多个请求中都需要传递的参数(如
accessToken
或sessionID
),使用环境变量可以避免手动修改每个请求。
3 全局变量(Global Variables)
①基本概念
全局变量是Postman中在所有请求中都可访问的变量。这意味着你在Postman中创建的全局变量,可以在任何请求中使用,无论是同一个环境还是不同环境中,都会使用相同的值。
全局变量的作用范围是整个Postman应用,而不仅限于某个环境。因此,如果你希望某个变量在所有请求中都有效且不会随环境切换而变化,可以使用全局变量。
②创建步骤:
- 打开Postman,点击右上角的环境选择框,选择 “Manage Environments”(管理环境)。
- 点击 “Globals” 标签页,进入全局变量设置界面。
- 在全局变量界面中,点击 “Add” 按钮,添加一个新的全局变量。
- 输入变量的名称和值,并点击 “Save”。
③使用步骤
在请求中使用全局变量时,和环境变量一样,使用 {{variableName}}
的格式。
④应用场景
- 全局配置:当某些参数(例如API密钥、服务器地址等)在多个环境中都需要使用,并且不依赖于环境切换时,可以使用全局变量。
- 跨请求共享信息:当你希望在不同请求间共享某个值(例如从第一个接口获取的认证Token),可以使用全局变量。
4 环境变量与全局变量的区别
特性 | 环境变量(Environment Variables) | 全局变量(Global Variables) |
---|---|---|
作用范围 | 仅在指定环境中有效,在不同环境间切换时可以变化 | 在所有请求中都有效,无论环境如何切换 |
配置方式 | 在环境配置中进行设置 | 在"Globals"设置中配置 |
使用场景 | 适用于不同环境下需要切换的配置,如API地址、认证信息等 | 适用于所有环境和请求中通用的配置,如API密钥、常见参数等 |
优先级 | 当环境切换时,环境变量会覆盖全局变量的值 | 全局变量是默认值,当没有环境变量时使用全局变量的值 |
【优先级规则】
Postman 变量的优先级从高到低依次为:
- 局部变量(Local Variables)(请求中的动态设置变量)
- 环境变量(Environment Variables)
- 全局变量(Global Variables)
- 集合变量(Collection Variables)
如果同一个变量在多个作用域中定义(如在环境、全局或集合中),Postman 会首先使用最具体范围的变量,最后使用最广泛范围的变量。