Postman 及 Newman 使用开发指南(二):Postman 环境变量与全局变量
使用API的常见场景是开发人员有自己的本机开发(dev)环境,团队之间共用测试(staging)环境,对外提供生产(production)环境。
本文假设各种环境的链接如下:
1 | dev http://localhost |
开发人员对/users
接口进行调试时,如果没有环境变量,则可能要不断地输入以下链接进行替换:
1 | http://localhost/users |
Postman 提供了环境变量(Environment Variable),来解决这个问题。
环境变量
管理
Postman 环境变量相关按钮放置在Builder页面的右上角。
点击最右的 ⚙️ 图标,可以添加、编辑、查看环境。首先,我们添加一个staging的环境,下属变量url设置为http://staging
。
再添加dev和production环境。
使用示例
我们将环境切换为dev
,在地址栏输入/users,查看“Code”代码:
1 | GET /users HTTP/1.1 |
可见,Postman 自动将解析为http://localhost
。
全局变量
API测试时,也常有这样的场景:首先要进行登录,登录后获取用户名,而用户名将在后续请求中使用。
Postman 提供了全局变量(Global Variable),来解决类似问题。
设置全局变量
至少有三种方式来设置全局变量:
- Postman 全局变量的按钮放置在Builder页面的右上角,👁️ 图标。
点击“Global”对应的“Edit”即可进入管理页面:
- Pre-request Script
- Tests
其中方式2和方式3都可以用以下命令设置全局变量:
1 | postman.setGlobalVariable("variable_key", "variable_value"); |
示例
我们首先通过上节的方式1添加一个全局变量:leap_year_2016
我们访问 Postman 官方示例中判断年份是否为闰年的链接:
1 | https://postman-echo.com/time/leap?timestamp=2016-10-10 |
然后在Tests里添加如下代码:
1 | var jsonData = JSON.parse(responseBody); |
发送请求后,由于2016年是闰年,所以全局变量leap_year_2016
值应变为true。
查看一下:
leap_year_2016=true
,符合预期。
Postman 及 Newman 使用开发指南(二):Postman 环境变量与全局变量
https://blog.weixinbook.net/2017/04/21/postman-environment-variable-and-global-variable.html