接口测试流程
1拿到接口文档(没有需要抓包),熟悉接口业务,接口请求四要素和响应四腰素,接口鉴权方式,错误码业务等
2.编写接口测测试用例(测试点XMND)并评审(怎么测)
正例:正常输入接口的请求四要素,查看并验证接口响应数据的正确性。
接口请求四要素:请求方式,请求路径,请求头,请求数据
接口响应四要素:响应码,响应信息,响应头,响应数据。
反例:接口鉴权反例:鉴权码为空,错误,过明等
接口参数反例:参数为空,参数类型异常,参数长度异常。
业务场景反例:黑名单,接口调用次数,分页(100条,每页10条)
3.使用Postman执行接☐测试
4.通过Postman+Newman+Jenkins实现接口自动化测试持续集成
并且输出报告以及进行邮件,企微,钉钉通知。
接口关联
什么是借口关联
当接口测试的上一个接口的返回值需要作为下一个接口参数。
时间戳:{{$timestamp}}
实现接口关联
使用json对象取值,保存到全局变量
var jsonData =pm.response.json();
console.log("Respense data:",jsonData);var access_token=jsonData.access_token;
console.log("access_token from response", access_token)pm.globals.set("access_token", access_token);
使用正则提取,保存到全局变量
{{access_token}}
全局变量通过{{变量名}}使用
全局变量和环境变量
全局变量
在postman这个应用中,都能使用的变量
环境变量
希望在一套脚本的不同环境都能测试
不同环境的区别在于:IP或者域名不一样
Postman测试批量运行
- 手动测试
- 定时运行
- 通过CLI自动运行:
获取Postman的key
postman login --with-api-key PMAK-681778f395508a00014e7ac1-87399b1df9b105bc2220499cfbff0d3d22
postman collection run 43521970-0efe2428-d163-4142-baca-073a9e7fe78e
- 性能测试

Fixed:固定
Ramp up:逐步增强
Spike:尖刺
Peak:尖峰
Postman自动化测试结果断言
断言方式
状态断言/业务断言
// 状态断言,是否请求成功验证状态码
pm.test("请求成功", function () {pm.expect(pm.response.code).to.be.oneOf([200, 202]);
});
// 业务断言,测试是否包含某个字符
pm.test("Status code name has string", function () {pm.expect(pm.response.text()).to.include("id");
});
Postman自带断言

准确的断言带动态参数的接口
- 不使用系统的时间戳({{timestamp}})
- 创建自己的时间戳在请求之前
var nowday = Date.now();
pm.globals.set("nowday", nowday);
- 把参数修改为自定义时间戳
- 断言,不适用{{}}获取全局变量,使用pm.global.get("")
- 公共断言写入集合
Postman数据驱动CSV或TXT测试
什么是数据驱动
通过数据驱动用例执行,本质上请求四要素里面的请求参数不同,因为不同的数据传入接口得到不同的结果。所以我们可以先把这些数据设置好,然后读取这个数据文件执行用例。实现覆盖正反例。
实现数据驱动的方法
结构化
设置专门的文件夹管理,复制多个用例设定不同的数据测试
CSV
编写CSV文件,通过{{}}注入参数运行数据
把所有参数改为获取全局变量,参数名要和CSV内的一致
选择数据文件批量运行
缺点:不能做到一个接口一个数据文件,而是所有接口一个数据文件
多个测试怎么设置断言
使用测试用例判断,if
Newman+Allure+Jenkins自动化持续集成
导出测试集和全局变量
前提:需要安装node,newman和html模块
把环境变量改为集合变量
newman run "d:/Postman/ms/Testcase.json" -r html --reporter-html-export "d:/Postman/ms/report.html"
有环境就带上-g“xx.json”

- Allure生成报告
newman run "d:/Postman/ms/Testcase.json" -r allure --reporter-allure-export "d:/Postman/ms/allure-report"
使用Jenkins生成Allure报告
- 配置自定义工作区,把测试用例所在目录输入到工作空间
- 输入构建的命令
- 构建后选择生成Allure报告
Postman+CLI+Jenkins自动化持续集成
把环境变量改为集合变量
在 Postman 中创建测试集合和环境
- 创建测试集合:打开 Postman,创建一个新的集合,把所有需要测试的 API 请求添加到这个集合里。
- 创建测试脚本:针对每个 API 请求,编写测试脚本。测试脚本可以运用 Postman 提供的断言函数来验证 API 的响应是否符合预期。
- 创建环境变量:若 API 请求包含一些可变的参数,像 URL、认证信息等,可创建环境变量进行管理。
导出 Postman 集合和环境
- 导出集合:在 Postman 中,点击集合名称旁边的三个点,选择 “Export”,将集合导出为 JSON 文件。
- 导出环境:同样的操作,将环境也导出为 JSON 文件。
配置 Jenkins
- 创建新任务:登录 Jenkins,点击 “新建任务”,选择 “构建一个自由风格的软件项目”,输入任务名称后点击 “确定”。
- 配置源码管理:若测试集合和环境文件存于代码仓库,可在此处配置仓库的 URL、认证信息等。
- 配置构建触发器:依据需求设置构建的触发条件,例如定时构建、代码变更触发等。
- 配置构建步骤:在 “构建” 部分,点击 “增加构建步骤”,选择 “Execute shell”(Linux/Mac)或者 “Execute Windows batch command”(Windows)。在命令框中输入 Newman 的运行命令,示例如下:
newman run /path/to/your/collection.json -e /path/to/your/environment.json
配置构建后操作
- 生成测试报告:若想生成详细的测试报告,可安装 Newman 的报告生成器,如
<font style="color:rgb(0, 0, 0);">newman-reporter-htmlextra</font>。安装后,修改构建命令以生成 HTML 报告:
newman run /path/to/your/collection.json -e /path/to/your/environment.json -r htmlextra --reporter-htmlextra-export /path/to/report.html
- 发布测试报告:在 Jenkins 中,点击 “增加构建后操作”,选择 “Publish HTML reports”。在 “HTML directory to archive” 中输入报告文件所在的目录,在 “Index page [s]” 中输入报告的文件名(如
<font style="color:rgb(0, 0, 0);">report.html</font>)。
保存并运行任务
- 完成上述配置后,点击 “保存”。
- 手动触发构建或者等待触发条件满足后自动构建,Jenkins 会运行 Newman 命令执行 API 测试,并生成测试报告。