在接口测试过程中,变量对于我们来说是一个非常重要的功能,可以方便我们存储和重复使用某些值。
在postman中,变量类型主要有:环境变量,全局变量,集合变量和本地变量四种。
- 环境变量:设置环境变量首先要设置环境名称,只有在选中这个环境名称时,环境变量才能生效。
- 全局变量:一旦申明了全局变量,全局有效,也就是说postman中的任何集合,任何请求中都可以使用这个变量。它的作用域是最大的。
- 集合变量:集合变量是在集合中进行设置的,只作用于当前集合的。
- 本地变量:本地变量是在请求中设置的,只作用于当前请求。
1.环境变量
使用postman过程中,可能会出现创建了API但API的URL会随着服务器IP地址的变化而变化。这样的情况下,如果每个API都重新修改URL的话,那将是非常的麻烦,所以postman中也提供了环境变量的设置。postman可以设置多套环境,每套环境里可以有多个环境变量。
1)我们可以在postman的右上角设置当前的环境Environment。
2)添加postman网址(作为我们的测试环境)
3)添加完成后,在右上角的地方我们就可以选择所需要的环境,然后再点击请求。这样即使是地址变化,也能很方便的统一修改。
2.全局变量
全局变量(Globals)的用法与环境变量类似,只是对于postman来说,Globals仅有一组,作用于整个postman,而环境变量可以有多组。全局变量是在postman中所有的api都使用的变量,可以直接引用全局变量中的变量,而不用指定环境。创建全局变量也要先打开环境变量的管理窗口,点击Edit,进入全局变量操作界面,如下图所示,添加了一个"user"变量。
注意,当全局变量和环境变量存在相同变量名时,全局变量会被环境变量覆盖,处于失效状态。利用全局变量进行请求,效果如下图:
3.集合变量
集合变量是针对集合进行创建,选择一个集合,打开查看更多动作(…)菜单,然后点击Edit 。选择“变量”选项卡以编辑或添加到集合变量。
4.本地变量
本地变量主要是针对单个URL请求设置的变量,作用域只是局限在请求范围内。如请求URL如下,设置两个本地变量,user,pwd作为参数,请求方式为get,变量设置的格式为{{变量名称}}。
变量设置好后需要赋值,在Pre-request-Script里面编写如下代码pm.variables.set(“变量名称”,“变量值”),如下图所示:
5.其他变量设置方法
Pre-request-Script设置:
环境变量,全局变量和集合变量也可以像本地变量一样通过代码进行设置,设置完成后,就可以在对应界面同步显示,和界面设置是一样的效果。
Tests中设置:
测试中经常会出现B接口中需要用到A接口中返回报文中的某个字段,例如登录接口一般会返回一个token值,其他接口的操作都会需要这个token值,这时可以在Tests中进行断言的同时,设置全局变量,以供其他接口使用: