前言:在进行接口测试的时候,在不同的场景下或者不同的集合下面有一些变量是不同的。这时候我们可以通过设置postman的环境变量,来进行快速的切换。
Postman 允许定义自己的环境变量(Environment),最常见的是将测试 URL 进行定义成变量的形式,这样随着你的域名怎么变,URL 就不用变更,非常方便
一、postman 中的变量作用域
Global:全局变量,(可以将错误的提示信息设置成全局变量)
Environment:环境变量,比如可以将需要测试的 domain 设置成环境变量
Local:本地变量,一般可以在 sandbox 中进行定义
Data:从测试的数据中导入的变量,也就是我们常说的那种所谓的参数化
二、设置环境变量Environment:点击右上角设置icon,点击Add按钮,添加环境
三、设置环境变量Globals:点击Globals 可设置全局变量
可切换环境,以及查看环境变量的值
四、使用变量:使用时,使用{{}}把变量名括起来就好了。如 url 为:{{host}}/api/cloud/virtualdatacenters/{{vdc}}/virtualappliances?startwith=0&limit=30
五:设置关联变量:编写Test,取出返回参数内容:
说明:在应用业务接口中,完成一个业务功能时,有时候一个接口可能不满足业务的整个流程逻辑,需要多个接口配合使用,并且在A接口调用后,我们需要在A接口的返回数据中拿到需要的字段,并且在调用B接口的时候,作为B接口请求参数传递给B接口,拿到后续响应的返回数据。
实战:编辑vapp时,需要用到创建vapp返回的id值
在创建vapp接口的Tests中,输入:
var Jsondata = JSON.parse(responseBody);
//设置环境变量 vapp返回信息
pm.environment.set("vapp",Jsondata.id);
//提取出id参数数据
创建另一个接口,完成参数关联
将vapp作为变量,该值会随着创建vapp接口返回的id值而同步更新
总结:
环境变量:是选择哪个环境就可以用的变量,一个变量只能属于某个环境,在某一个环境中变量不可重复定义;在环境与环境之间可以定义重复的变量;一个环境可以包含多个环境变量;常见环境分类:开发环境、测试环境、生产环境。
全局变量:是所有环境都有效的变量,全局变量是全局唯一的,不可重复定义的变量
环境变量优先级高于全局变量:比如环境变量有一个IP地址,全局变量也有一个IP地址,选择了某个环境后,界面会优先选择环境变量,如果需要使用全局变量则需要做更改