4、实现Postman中的数据驱动
当需要进行数据驱动运行多次Postman脚本时,可以通过.csv
或者.json
格式的数据文件,对接口测试数据进行管理,以方便用例的执行。
步骤1:
进入Collection测试集的Collection Runner界面。
点击Collection测试集名称后边的箭头,点击Run
。
步骤2:
在Collection Runner界面中选择需要执行的接口。
我们只需要执行批量新增学院请求,如下图:
Deselect All
:取消全选(默认全选)。
Select All
:全选。
Reset
:重置(恢复默认全选)。
步骤3:
配置Collection Runner执行选择。
-
选择Collection测试集。
-
Environment
:选择环境变量。 -
Iterations
:接口迭代次数,这个不用填写,选择数据文件后会自动识别(会自动忽略第一行标题)。如果只执行测试集,不进行数据驱动,自己按需求填写。
-
Delay
:每次执行的间隔。 -
Data
:选择.csv
数据文件。(可以添加测试数据,在tests中用data参数访问)// data 表示数据文件的对象 // data.cityname表示获取数据文件中的cityname属性值 pm.test("验证返回中city的值是"+data.cityname, function () { var jsonData = pm.response.json(); // 获取返回值所有数据 pm.expect(jsonData.city).to.eql(data.cityname); // 断言返回值中具体字段的值 }); // 这种取值方式要重点记住
-
Save responses
:保存响应。允许记录请求的响应头和正文,方便您查看。
这可能会收集较多的数据,从而影响测试集运行的性能。
-
Keep variable values
:是否保留测试集执行过程中对环境变量的修改。(够不勾选都可以) -
Run collection without using stored cookies
:在不使用存储的cookie的情况下运行测试集。 -
Save cookies after collection run
:测试集运行后保存cookie。更新此会话中存储的cookie,并将其保存到您的cookie管理器中。
(以上四项默认即可)
-
Run ***
:运行已选择collection测试集中的接口。
配置完如下图:
重点提示:
Preview
能够查看数据文件中内容预览,可以查看文件读取内容是否有误。
步骤4:
执行并查看结果。
说明:
(1)顶部栏:
-
Collection Runner
:返回Collection Runner界面。 -
Run Results
:当前Run运行的结果界面。 -
My Workspace
:切换工作空间。 -
Run In Command Line
:在命令行中运行。(好像是需要安装一个Newman的命令行工具来执行命令,这个暂时不重要) -
Docs
:进入Postman官方文档https://learning.postman.com/docs/running-collections/intro-to-collection-runs/
(2)测试结果部分:
测试集Run完成后,
- 成功多少个断言。
- 失败多少歌断言。
- 测试集的名称。
- 测试集选择的环境变量。
执行完成PASSED和FAILED的总和,等于每个接口断言个数×执行次数。
(3)工具栏:
-
Run Summary
:查看运行摘要(概况)。
如下图:
-
Export Results
:导出测试集执行结果,.json
文件的形式。 -
Retry
:重新执行一次测试集。 -
New
:新建一个Collection Runner界面,其实也就是返回了Collection Runner界面。
(4)请求列表部分
说明:
- 我们可以看到每一个请求名称、URL、执行的响应码、使用时间、所用数据,还有该请求所执行的断言。
- 左侧栏可以点击切换,只查看成功的断言、只查看失败的断言和全部显示。
- 右侧栏我们可以直接选择查看第几次发送的请求。
-
点击请求的名称,我们也可以看到该请求的详细数据,如下图:
(5)底部栏:
Console
:控制台,可以查看每个请求的运行日志和数据信息。
可以查看请求头、请求体、响应头、相应体等数据。
如果请求报错,也可以查看到错误信息。
以上就是在Postman中数据驱动的使用过程。(json格式的数据文件使用同理)
实际上面是讲了两部分内容,
- 一部分是Collection测试集的执行,也就是
Collection Runner
。- 还有一个就是Postman中数据驱动的使用。
5、补充: json格式数据文件说明
[
{
"userName":"张三",
"passWord":"123456",
"sex":"男",
"age":66
},
{
"userName":"李四",
"passWord":"123456",
"sex":"男",
"age":88
},
{
"userName":"王五",
"passWord":"123456",
"sex":"女",
"age":99
}
]
提示:外面必须是[]
,每一组数据使用 {}
进行封装,中间使用逗号进行分隔。
6、补充:数据文件在预置脚本中的使用
(1).csv
文件
Pre-request Script
编写如下代码:
// 在Pre-request Script和tests中用data代表访问参数
// 获取参数化文件中的dep_name字段的值
var dep_name = data.dep_name
// 将获取到的 dep_name 设置为环境变量
pm.environment.set("dep_name", dep_name);
// 调试
console.log(pm.environment.get("dep_name"));
(2).json
文件
Pre-request Script
编写如下代码:
// 在Pre-request Script和tests中用data代表访问参数
// 获取参数化文件中的userName字段的值
var userName = data.userName
// 将获取到的 userName 设置为环境变量
pm.environment.set("userName", userName);
// 调试
console.log(pm.environment.get("userName"));
网友评论