[译]Bruno - 自由强大安全开源的 API 测试神器(文本管理/git友好/离线优先)- API 测试

459 阅读3分钟

天下苦 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');
});

截屏:

bru lang sample

脚本 API

请参阅 [脚本 API](docs.usebruno.com/scripting/j… 以获取一整套方法,这些方法使您能够编写自定义 JavaScript 代码,以便在 Bruno 中自动化和测试您的 API 请求。 它允许您直接在测试脚本中操作请求变量、修改标头、处理响应数据以及实施复杂的逻辑。

断言

断言允许您以声明方式编写测试。

这应该可以满足您的大部分测试需求。对于复杂的测试,您可以编写测试脚本。

示例:

bru assertions

使用数据文件进行迭代

通过 Collection Runner 功能,您可以迭代数据文件,从而轻松自动化和管理数据驱动的请求。Bruno 支持使用 CSV 和 JSON 文件来运行请求,因此您可以高效地运行测试或处理多个数据输入。

介绍

在本教程中,我们将探索 Collection Runner 功能,该功能使您能够使用自定义数据为每次迭代运行集合。

开始步骤

  1. 打开 Bruno 应用 。
  2. 创建名为 runner-example 的集合 
  3. 创建 POST 请求 并命名为 runner-request
  4. 使用 URLhttps://reqres.in/api/users
  5. 为请求体选择 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

  1. 单击右侧导航栏中的 runner 图标。
  2. 选中 Run with Parameters 选项。
  3. 选择文件类型: CSV 或 JSON。
  4. 点击 Run Collection

执行完成后,您可以查看每个请求的结果并检查其状态。

视频链接:
docs.usebruno.com/assets/demo…

使用 Bruno CLI

  1. 导航到 Bruno 集合的根目录。
  2. 运行以下命令:
   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' 文件。您可以在浏览器中查看此文件。

命令概览

  1. --reporter-html results.html: 生成可读的 HTML 报告。
  2. --csv-file-path /path/to/csv/file.csv: 指令您想使用的 CSV 文件的路径。

Bruno CLI 概览