[TOC]
<br>
### 变量 Variables
#### 变量的目的
设置变量的主要目的,我认为主要有两个
1. 一处设置,多处调用,一处修改,全部生效
举例:在某个项目中,一个用户的UID是一串非常难记非常长的字符串。在这个项目的几十个请求中,都会带上这个参数,那么我们可以将用户UID设置成变量,在所有的请求中,带上变量名称接口。如果需要更换用户UID,不需要修改那几十个请求,直接修改变量值即可。
2. 方便与数据的关联与同步
举例:在某个项目中,一个用户的账号金额是会发生变化的。充值前可以通过查询接口获得初始金额是m元,经过调用充值接口充值n元后,金额会发生变化,等于m+n元。
这个过程中,我们只能通过变量进行数据的关联,先将初始查询到的金额赋予一个变量。在充值后,引用变量名称获得初始金额,将初始金额与充值金额相加,得到最终的用户金额。
#### 变量的作用范围
在Postman中,变量有5种作用范围。如果在多个范围中都有设置同一个变量,那么高优先的会覆盖低优先级。优先级:data>local>environment>collection>global

#### 变量的设置与引用
在变量设置面板中,设置变量名为“user”,变量值为“Milton”,在引用的地方填写`{{user}}`,在真正调用时,{{user}} 会被替换成“Milton” 如:
设置全局变量Globals

在请求中应用

### 管理全局变量 Globals Variable
`常用,需掌握`


### 管理测试集变量 Collection Variable

### 管理环境变量 Environment Variable
`常用,需掌握`
在测试过程中,程序有可能分测试环境和正式环境。不同的环境中,项目的域名一般是不一样的,还有一些跟环境相关的参数。在postman中,可以设置环境变量,在不同的环境中使用不一样的参数值,这就`实现了一套测试用例分别适应不同的环境`。
实例:设置一个测试环境与生产环境,在这两套环境中,域名是不一样的。

设置测试环境的变量

设置生产环境的变量

设置完成后,选择测试环境运行

设置完成后,选择生产环境运行

这个实例中,不用修改request builder,直接选择不同的环境,便可实现了发送请求时采用不同的变量内容。
### 管理局部变量 Local Variable
在脚本中设置的局部变量,在讲解脚本的时候再介绍
### 管理运行时参数变量 Data Variable
`自动化时,常用`
还记得在运行Collection的设置窗口中,有个上传Data参数文件的设置么?

这里通过参数文件设置的变量,便是Data Variable。
举例:
1. 在Request Builder中引用变量名{{path}}与{{value}}

2. 设置参数文件“58702574.csv”内容格式如下:

或设置参数文件“58702589.json”内容格式如下:
```python
[{
"path": "post",
"value": "1"
}, {
"path": "post",
"value": "2"
}, {
"path": "post",
"value": "3"
}, {
"path": "post",
"value": "4"
}]
```
3. 在Collection Runner 中导入参数文件

4. 运行结果

在这个例子中,一个接口迭代了4次,每次迭代使用了不同的参数值。
<hr style="margin-top:100px">
:-: 
***微信扫一扫,关注“python测试开发圈”,获取更多测试开发分享!***
- 前言
- Fiddler01-抓包原理介绍与配置
- Fiddler02-菜单功能介绍
- Fiddler03-轻松玩转Fiddler
- Fiddler04-进阶使用FiddlerScript
- Fiddler05-使用FiddlerScript对微信文章互动量进行监控
- Postman01-介绍与安装
- Postman02-HTTP请求与响应
- Postman03-Collection管理与运行
- Postman04 -变量详解
- Postman05-初级脚本使用
- Postman06-实例小结篇
- JMeter01-JMeter就是这么简单
- JMeter02-一个完整实战包你学会使用JMeter
- JMeter03-在JMeter中使用BeanShell编程
- JMeter04-图形化和非图形化运行JMeter
- JMeter05-生成美观的HTML测试报告
- JMeter06-JMeter+Jenkins实战
- JMeter07-解析session与cookie