接口测试:postman之使用json文件实现数据驱动测试

例子:接口:https://www.v2ex.com/api/nodes/show.json

     请求方式:get

     接收参数:name

要求:实现参数name自动传入不同值,并检查接口每次返回值中name必须是传入参数的name值?

接口返回类型如下:

{
    "avatar_large": "//cdn.v2ex.com/navatar/8613/985e/90_large.png?m=1553141687",
    "name": "python",
    "avatar_normal": "//cdn.v2ex.com/navatar/8613/985e/90_normal.png?m=1553141687",
    "title": "Python",
    "url": "https://www.v2ex.com/go/python",
    "topics": 11154,
    "footer": "",
    "header": "这里讨论各种 Python 语言编程话题,也包括 Django,Tornado 等框架的讨论。这里是一个能够帮助你解决实际问题的地方。",
    "title_alternative": "Python",
    "avatar_mini": "//cdn.v2ex.com/navatar/8613/985e/90_mini.png?m=1553141687",
    "stars": 7682,
    "root": false,
    "id": 90,
    "parent_node_name": "programming"
}

操作步骤:

1、postman中设置环境变量name,其值为变量node_name:

2、编写json文件,实现node_name参数化:

[{"node_name" : "python"},{"node_name" : "php"},{"node_name" : "java"}]

注:有多个传入参数时,格式如下:

[{"name" : "python","id" : "90"},{"name" : "php","id" : "91"},{"name" : "java","id" : "91"}]

3、Tests中编写断言脚本:

//tests["Statue code is 200"] = responseCode.code === 200;

var jdata = JSON.parse(responseBody);

//获取环境变量name的值,并定义变量node_name来接收该值
//var node_name = pm.environment.get("node_name");
//console.log(node_name)

//data.node_name表示从测试数据中获取name的值,jdata.name表示从返回值的json数据中获取name的值
tests["返回值中的name必须等于传入参数中的name值"] = jdata.name === data.node_name

4、打开postman的collection Runner界面,选择测试数据文件json,设置迭代次数,数据格式等,点击Run即可

5、测试结果:

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值