天下苦 postman 久矣!
原文链接:
Testing – Bruno Docs
Assertions – Bruno Docs
Iterate Using Data Files – Bruno Docs
测试
Bruno 支持用 JavaScript 为 API 请求编写自动化测试脚本,用于断言其行为。
这有一些好处
- 提高效率:测试可以重复运行,从而减少手动测试所需的时间和精力。
- 扩大覆盖范围:与手动测试相比,自动化测试可以涵盖更大范围的场景和边缘情况。
- 持续集成/持续交付 (CI/CD):自动化 API 测试可以集成到 CI/CD 管道中,确保在部署之前对 API 更改进行全面测试。
- 更易于维护:随着 API 的发展,自动化测试可以轻松更新,与手动测试相比,可以减轻维护负担。
- 更轻松的回归测试:对 API 进行更改后,可以轻松重复自动化测试,从而减少回归测试所需的时间。
示例:
test("should be able to login", function() {
const data = res.getBody();
expect(res.getStatus()).to.equal(200);
});
test("should receive the token", function() {
const data = res.getBody();
expect(data.token).to.be.a('string');
});
截屏:
脚本 API
请参阅 [脚本 API](docs.usebruno.com/scripting/j… 以获取一整套方法,这些方法使您能够编写自定义 JavaScript 代码,以便在 Bruno 中自动化和测试您的 API 请求。 它允许您直接在测试脚本中操作请求变量、修改标头、处理响应数据以及实施复杂的逻辑。
断言
断言允许您以声明方式编写测试。
这应该可以满足您的大部分测试需求。对于复杂的测试,您可以编写测试脚本。
示例:
使用数据文件进行迭代
通过 Collection Runner 功能,您可以迭代数据文件,从而轻松自动化和管理数据驱动的请求。Bruno 支持使用 CSV 和 JSON 文件来运行请求,因此您可以高效地运行测试或处理多个数据输入。
介绍
在本教程中,我们将探索 Collection Runner 功能,该功能使您能够使用自定义数据为每次迭代运行集合。
开始步骤
- 打开 Bruno 应用 。
- 创建名为
runner-example的集合 - 创建 POST 请求 并命名为
runner-request - 使用 URL:
https://reqres.in/api/users - 为请求体选择 JSON 格式 并添加以下数据:
{
"name": "morpheus",
"job": "leader"
}
为请求体选择 JSON 选项并添加 JSON 数据是可选的。
使用 Collection Runner
我们将创建一个示例数据文件 'csv-example.csv',其中包含要在数据驱动测试中使用的输入字段,例如 'name' 和 'job'。 您需要根据正在使用的 API 的特定要求创建 CSV 或 JSON 文件。
由于在这种情况下,API 需要两个数据输入 “name” 和 “job” ,因此文件应包含这些字段。 以下是如何构建数据的示例:
1. CSV 格式示例
示例 CSV 文件可能如下:
name, job
John Doe, Software Engineer
Jane Smith, Product Manager
Mark Lee, Data Scientist
2. JSON 格式示例
示例 JSON 文件可能如下:
[
{ "name": "John Doe", "job": "Software Engineer" },
{ "name": "Jane Smith", "job": "Product Manager" },
{ "name": "Mark Lee", "job": "Data Scientist" }
]
现在,您已准备好使用 Collection Runner 了。您可以通过两种方式访问它:
使用 App
- 单击右侧导航栏中的 runner 图标。
- 选中 Run with Parameters 选项。
- 选择文件类型: CSV 或 JSON。
- 点击 Run Collection。
执行完成后,您可以查看每个请求的结果并检查其状态。
视频链接:
docs.usebruno.com/assets/demo…
使用 Bruno CLI
- 导航到 Bruno 集合的根目录。
- 运行以下命令:
bru run --reporter-html results.html --csv-file-path /path/to/csv/file.csv
或
bru run --output results.html --format html --csv-file-path /path/to/csv/file.csv
视频链接:
docs.usebruno.com/assets/demo…
它将在您的 Bruno 集合的根目录中创建一个 'results.html' 文件。您可以在浏览器中查看此文件。
命令概览
--reporter-html results.html: 生成可读的 HTML 报告。--csv-file-path /path/to/csv/file.csv: 指令您想使用的 CSV 文件的路径。