image

上一章节Postman 实用接口测试系列 3 - 写测试介绍了如何在postman中编写测试用例,我们这一章将介绍如何使用postman实现数据驱动的测试。

想象你一个场景,你需要测试一个注册的接口,那我们会需要测试几个不同的场景。比如注册成功,因为password不符合导致注册失败或者因为username不符合导致注册失败等。这些测试接口都是一样的,只是输入不同。这时候我们可以使用预先设定好的数据作为输入测试同一个请求,而不是写多个请求。

1 接口介绍

一个POST接口,url是https://reqres.in/api/register,body是包含email和password的json。

具体内容如下,大家可以使用Postman 实用接口测试系列 1 - 基础介绍的把下面的curl导入postman中。

curl \--location \--request POST 'https://reqres.in/api/register' \\

\--header 'Content-Type: application/json' \\

\--header 'Cookie: \_\_cfduid=d954ed9456e6769bc66d8fbbfd41211531594215767' \\

\--data-raw '{

"email": "eve.holt@reqres.in", 

"password": "pistol"

}'

2 写一个简单的测试用例

因为我们的目的是为了讲解如何使用postman进行数据驱动的测试,所以这里用例只是列举几个简单的。

模块 用例名称 请求body 预测结果
注册 注册成功 {"email": "eve.holt@reqres.in","password": "pistol"} 200 ,{"id": 4,"token": "QpwL5tke4Pnpja7X4"}
注册 密码为空 {"email": "eve.holt@reqres.in","password": ""} 400 ,{"error": "Missing password"}
注册 邮箱为空 {"email": "","password": "pistol"} 400, {"error": "Missing email or username"}

3 把数据存入csv文件

新建一个叫data.csv的文件,文件内容如下:

记得加引号

image.png

4 请求参数化

4.1 创建collection级别的变量 , 这个主要是为了如果我们导入data.csv文件也可以测试请求用的。

记得加上引号

image.png

4.2 请求的body参数化
image.png
这时候跑一下请求是成功的。

5 数据驱动测试

5.1 使用data.csv跑请求
点击Runner,在弹出框中,选择需要跑的请求,如果有环境的话需要选择环境,当然我们这里例子里没有,所以不需要。
然后导入csv文件。
image.png

5.2 查看结果
可以点击某个请求看具体的内容信息。
image.png

这样我们就完成了一个简单的数据驱动的测试。除了用csv以外,我们还可以使用json格式文件来存储数据源,有兴趣的小伙伴可以试一下。
下一章我将会讲解如何使用postman做契约测试。


lucy
18 声望7 粉丝