全网最细Postman接口测试教程---构建请求(详全)
一、前言
postman是一款支持http协议的接口调试与测试工具,其主要特点就是功能强大,使用简单且易用性好
无论是开发人员进行接口调试,还是测试人员做接口测试,postman都是我们的首选工具之一
postman 在 2018 年之后就不再支持浏览器版本,所以,想要使用它就必须先下载客户端再安装使用
它的强大在于灵活趁手的接口测试功能,极大的提高了 API 测试效率
postman 在收集运行时,所有请求都将按照在Postman中看到的顺序运行。因此,首先按照文件夹的顺序执行所有请求,然后再执行集合根目录中的所有请求
可以用内置函数来覆盖此行为postman.setNextRequest(),顾名思义,此功能允许您指定下一个运行的请求
二、工作流
假设有四个接口:注册,test_demo, 登录, 个人信息,写到一个 Collections
接下来我要改变执行顺序:注册-登录-个人信息-test_demo
三、setNextRequest
设置下一个要执行的请求
postman.setNextRequest("request_name");
在Tests中使用示例
四、注册后执行登录
“注册”接口执行后,在Tests中写执行写个请求“登录”
工作流有4个接口,指定了注册后执行登录
那么运行的结果是:注册-登录-个人信息,此时会跳过test_demo接口
也就是说当没指定顺序的时候,会按收集器写的顺序执行,如果指定了下一个请求,会执行下个请求(然后遵循前面规则按顺序往下执行)
五、循环当前请求
setNextRequest()执行当前接口名称,导致Postman连续运行当前请求。如果我要重复执行100次注册,可以通过for循环实现
// 重复执行100次注册
for (i = 0; i <= 100; i++) {
console.log(i);
postman.setNextRequest("注册");
}
在Collection Runner运行的时候会重复执行100次登录接口
六、停止执行工作流程
postman.setNextRequest(null);
关于postman.setNextRequest()
以下几点要点:
- 指定后续请求的名称或ID,收集运行器将负责其余的工作
- 它可以在预请求或测试脚本中使用
如果有多个分配,则最后一个设置值优先 - 如果postman.setNextRequest()请求中不存在,则收集运行器默认为线性执行并移至下一个请求
使用此工作流程时
请记住以下两个事实:
-
postman.setNextRequest()总是在当前请求的末尾执行
这意味着,如果您将此功能放在预请求或测试脚本中任何其他代码块之前,则这些代码块仍将执行 -
postman.setNextRequest()具有作用域,这是收集运行的来源
如果运行集合,则可以跳转到集合中的任何请求(甚至使用相同语法的文件夹中的请求)
但是,如果运行文件夹,则范围postman.setNextRequest()仅限于该文件夹
因此,您可以跳到该文件夹中的任何请求,但不能跳到该文件夹之外的任何请求
它包括其他文件夹中的请求,以及集合中的根级别请求
七、手动拖动顺序
使用 postman.setNextRequest() 设置工作流实际上不太直观,我们习惯上按看到的顺序执行,在Collection区域也可以手动拖动改变顺序
拖动后顺序
postman里有环境的设置,就是我们常说的用变量代替一个固定的值,这样做的好处是可以切换不同的域名、不同的环境变量,不同的线上线下账户等等场景
postman的参数化提供了一种简单的切换操作,降低了因为不同值而写多条用例的成本,值得一试
相关文章
- 只会postman单接口测试?这些高级功能你必须掌握
- 接口自动化测试:Postman实战教程
- 如何用postman实现接口自动化测试
- 一文搞定 Postman 接口自动化测试
- 基于postman的api自动化测试实践
- 一文3000字用Postman从0到1实现UI自动化测试
- 全网最全postman接口测试教程和项目实战~从入门到精通!!!
- 全网最详细Postman接口测试使用教程(实战干G货)
- Postman 做测试的 6 个常见问题
- Postman接口测试之断言,全网最细教程没有之一!
- 使用Postman进行API测试
- Postman接口测试流程
- 只会postman单接口测试?这些高级功能你必须掌握
- 【接口测试 】Day2-Postman实现接口测试(附项目实战)
- 软件测试案例|使用PostMan对getWeather接口进行关联测试
- postman(九):postman接口测试脚本集成到jenkins
- 接口 Postman 上传图片测试