Postman如何使用(三):使用数据文件【入门到精通】
数据文件是非常强大的方式使用不同的测试数据来测试我们的API,以检查它们是否在各种情况下都能正常运行。我们可以认为数据文件是“Collection Runner”中每个请求的参数。下面,我们通过一个例子来说明如何使用数据文件。
这篇文章需要结合下面两个文件进行说明,请分别下载:
集合文件usingDataFile.postman_collection.json如下:
{
"variables": [],
"info": {
"name": "Using data files",
"_postman_id": "5d604721-fce3-a131-635c-fbbf5744a169",
"description": "",
"schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json"
},
"item": [
{
"name": "POST Request",
"event": [
{
"listen": "test",
"script": {
"type": "text/javascript",
"exec": [
"var jsonData = JSON.parse(responseBody);",
"",
"tests['Response has data value'] = jsonData.form.foo === data.value"
]
}
}
],
"request": {
"url": "postman-echo.com/{{path}}",
"method": "POST",
"header": [],
"body": {
"mode": "formdata",
"formdata": [
{
"key": "foo",
"value": "{{value}}",
"type": "text",
"enabled": true
}
]
},
"description": ""
},
"response": []
}
]
}
数据文件usingDataFile.postman_data.json如下:
[{ "path": "post", "value": "1"},{ "path": "post", "value": "2"},{ "path": "post", "value": "3"},{ "path": "post", "value": "4"}]
在Postman中导入集合文件。导入成功后,我们就有了一个只有一个Post请求的集合。打开这个集合中的请求,我们会发现这个请求有两个变量,分别是请求URL中的path和请求体中的value,它们就像和环境变量一样被使用。这次,我们将通过使用数据文件,给这些变量赋值。再打开该请求的测试脚本,我们会发现在脚本中使用了data指定的数据。这个data在脚本中本身并没有定义。Postman沙箱从我们在设置集合运行的配置参数中选择的JSON/CSV文件初始化数据变量。
使用案例
下面就来看看到底如何在“Collection Runner”使用数据文件。我们先看看数据文件,Postman目前支持JSON和CSV两种格式的文件。在本文中对应的数据JSON文件像下面这样:
这是一个对象数组。每个对象表示一次迭代的变量值。这个对象的每个成员都代表一个变量。这样,在第一次迭代中,路径的变量将被赋值为post,并且请求体中的value将被赋值为1。同样,在第二次迭代中,路径的变量将被赋值为post,并且请求体中的value将被赋值为2。
数据文件也可以是CSV。示例CSV看起来像这样:
在典型的CSV方式中,第一行表示所有变量名称,后续行表示每次迭代时这些变量的值。对于迭代1,路径值为post,请求体值为1。对于第二次迭代,路径值仍然为post,但请求体值为2。
请注意,“Collection Runner”的每一次运行只能选择一个数据文件。
现在我们已经了解如何构建数据文件,接下来我们将该数据文件提供给“Collection Runner”。在运行器中单击选择文件,然后选择其中一个文件。我们还可以通过单击文件名旁边的预览来预览每个变量,以及每个变量的值。如下图所示:
现在我们可以运行我们的集合。我们会看到所有的测试都通过了。如果打开请求调试工具并展开请求正文,则会看到变量{{value}}已被数据文件中对应的值所代替。实际上,对于不同的迭代,这个值是不同的。这样,我们已经向我们的API使用了不同的数据进行测试,并确保它可以针对每种情况都能够正确工作。运行结果如下:
我们再来看看我们的测试脚本。变量数据是从数据文件中获取的。随着每次迭代,它的值都会从我们数据文件中获取对应的值。所以,我们可以通过API返回的值与我们在数据文件中设定的期望值进行比对,如果值一致,则认为测试通过;反之则测试不通过。
不仅仅在前置请求和测试脚本之中,数据变量可以在所有可以使用环境变量的地方使用,方式完全相同。
总结
总结完毕,这篇文章是使用Postman进行自动化测试的关键,希望大家能可以好好读一下这篇文章中的内容。也希望我的文章能够真正的帮助到大家。当然了在这里也准备了丰富的免费资料
点击链接免费领取海量资料记得备注111http://47.107.116.139/zhuoran/mf.php
Postman如何使用(三):使用数据文件【入门到精通】相关推荐
- Hadoop大数据从入门到精通-任亮-专题视频课程
Hadoop大数据从入门到精通-48021人已学习 课程介绍 Hadoop分布式文件系统(HDFS)和MapReduce的工作原理 如何优化Hadoop机群所需要的硬件配置 搭建Had ...
- 视频教程-赵强老师:大数据从入门到精通(6)MapReduce-Hadoop
赵强老师:大数据从入门到精通(6)MapReduce 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数据H ...
- PowerMill模具数控编程视频教程全套产品三轴零基础入门到精通
最近有很多人在问什么是结构设计?结构要处理的东西算是比较灵活,因为一个产品有了外形设计之后,要做结构设计来处理其运动特性.这样的产品在结构上是否坚固,是否能满足产品的要求,就成了结构设计的重要内容,而 ...
- 视频教程-赵强老师:大数据从入门到精通(7)HBase-Hbase
赵强老师:大数据从入门到精通(7)HBase 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数据Hadoo ...
- 视频教程-赵强老师:大数据从入门到精通(1)Linux基础-Linux
赵强老师:大数据从入门到精通(1)Linux基础 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数据Had ...
- 视频教程-赵强老师:大数据从入门到精通(15)Storm-大数据
赵强老师:大数据从入门到精通(15)Storm 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数据Hado ...
- 视频教程-赵强老师:大数据从入门到精通(23)配置Hive On Spark-Spark
赵强老师:大数据从入门到精通(23)配置Hive On Spark 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogi ...
- 视频教程-赵强老师:大数据从入门到精通(12)集群HA-Hadoop
赵强老师:大数据从入门到精通(12)集群HA 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数据Hadoo ...
- 赵强老师:大数据从入门到精通(20)Spark RDD-赵强老师-专题视频课程
赵强老师:大数据从入门到精通(20)Spark RDD-116人已学习 课程收益 本系列课程将基于RedHat Linux 7.4版本.Hadoop 2.7.3.Spark 2 版本全面介绍大 ...
- 三.数据库基础-Oracle入门到精通学习笔记
第一章 Oracle 11g概述 1.1 Oracle翻译为"甲骨文",由Oracle公司推出. 1.2 关系型数据库 1.2.1 数据库管理技术发展经历了 人工管理.文件系统.数 ...
最新文章
- JS 创建对象(常见的几种方法)
- Android开发之打开QQ聊天页面的方法
- 面试官:请手写一个带取消功能的延迟函数,axios 取消功能的原理是什么
- Microsoft AI - Custom Vision in C#
- c语言sin函数返回nan,C语言入口函数和LD_PRELOAD环境变量
- 作者:曾伟,电子科技大学副教授。
- ocdma相干非相干_非相干系统是什么意思
- 史上最通俗分布式锁解读
- Qt 防止程序二次运行 实现应用单例
- freetextbox java_FreeTextBox使用详解 (版本3.1.1)
- UTM坐标系与GPS坐标系转换笔记
- 通过云计算机管理档案,云计算下档案信息管理研究
- ps2无线手柄连接arduino的使用方法
- git cherry-pick使用总结
- 在阿里云里怎么样可以连接阿里云数据库
- 数模转换DAC-TLC5615的说明
- win10计算机打开之后隐藏3d对象视频,Win10 3D对象文件夹如何隐藏?手把手教你隐藏3D对象文件夹...
- 二极管与、或门,三极管非门电路原理
- 各大编程语言优势对比,哪些值得学习更高薪?
- MySQL (4) 第一范式 第二范式 第三范式 BC范式
热门文章
- 激活系统报错——输入错误: 没有文件扩展“.vbs”的脚本引擎
- MATLAB 棋盘格图片校准
- php 微信支付分 教程
- 缓存Cache-Control
- 图解《狂飙》人物关系
- 微信公众号订阅号开发的学习(二):获取用户发送的消息、简单的自动回复、自定义菜单
- 爬虫(三):爬取西刺高匿代理
- sakila-dwh-schema文件
- c语言怎么判断一个目录下面的文件是否为隐藏文件,怎么能显示出隐藏文件?...
- 跳一跳改分java源码_解密微信小程序漏洞:可下载任意小游戏源代码,“跳一跳”可改分...