当项目中 endpoint 测试用例和测试场景不断增加时,逐个管理和运行它们的成本会急剧上升。本应保障质量的自动化测试,反而可能自身成为维护负担。
传统上,团队都是手动选择测试用例。一旦项目积累了大量用例和场景,手动决定哪些需要包含、哪些需要用于回归测试,就会变成繁重且重复的工作。
Apidog Test Suites 采用了一种不同的方法。与其死板地存储 ID,不如让一个 suite(套件)存储一组过滤规则——例如按文件夹、标签、优先级或它们的组合。
每次运行前,suite 都会自动组合符合这些规则的所有测试用例和测试场景。你只需专注于编写测试和应用标签;新的测试资产会被自动识别,并流入你的 CI/CD 流水线,实现真正的无人值守持续集成。
随后,所有执行结果都会汇总到一份聚合报告中,便于分析和故障排除。
创建并编排你的第一个 Test Suite
创建 suite。 将 Apidog 更新到最新版本后,打开 Tests 模块,找到 Test Suite 部分,点击旁边的 ... 菜单并选择 Create Test Suite。
命名。 在弹窗中输入一个描述性名称,并设置优先级或标签等选项。这样就会创建一个空的 test suite。
添加内容。 一个 test suite 可以包含单个的 endpoint 测试用例,或者由多个测试步骤组成的测试场景。
添加测试内容:Static 与 Dynamic
当你点击 Add Endpoint Test Case 或 Add Test Scenario 时,可以选择 Static 或 Dynamic 模式。这个选择决定了 suite 如何决定运行内容,以及后续需要多少维护工作。
Static 模式 会锁定要运行的确切项目集合:系统会存储所选用例的唯一 ID。如果后续在同一个文件夹中添加了新用例,或者移动了现有用例,suite 的执行范围也不会改变。每次运行都是确定性的。
Dynamic 模式 存储的是过滤规则而不是用例 ID,例如:
- 某个文件夹下的所有用例
- 所有带有
semantic-valid标签的用例 - 所有 P0 优先级的测试场景
每次运行时,系统都会根据这些规则重新扫描项目,并包含当前符合规则的所有内容。任何文件夹、标签或优先级符合规则的测试用例或场景都会被自动包含——无需手动更新列表。
Static 与 Dynamic 模式:如何选择?
没有哪种模式是绝对更好的;它们服务于不同的需求。正确的选择取决于你希望 suite 随时间如何表现:
- Static 适用于范围严格、专用的测试(例如固定的回归测试集)——可预测性更强,每次运行结果完全相同。
- Dynamic 适用于持续迭代和“自动纳入”回归或冒烟测试——规则只需设置一次,suite 会自动保持同步,大大减少了维护工作。
| 维度 | Static 模式 | Dynamic 模式 |
|---|---|---|
| 核心逻辑 | 存储特定的用例 ID | 存储过滤规则(文件夹、标签、优先级等) |
| 内容随时间变化 | 固定不变,除非你手动修改 | 随着符合规则的用例添加或移除而自动更新 |
| 维护成本 | 较高;必须手动添加新用例 | 较低;规则设置一次,运行时自动保持同步 |
| 典型用途 | Bug 修复验证、核心路径稳定性、兼容性测试 | 全量回归、冒烟测试、发布验收 |
执行顺序与高级配置
添加内容后,你可以通过拖拽来重新排列编排列表中的项目。
对于每个执行项(例如测试场景),右侧的选项可以让你更精细地控制其运行行为。
有两个值得了解的选项:
- On Error —— 决定当某个步骤失败时,是继续执行、跳过本轮,还是停止整个运行。
- Iterations —— 将整个 suite 运行多次,用于进行简单的稳定性检查。
这些选项结合在一起,将 test suite 从静态的用例集合转变为可控的执行流。
运行 Test Suites
一旦 suite 设置完成,你可以通过多种方式运行它——从本地手动运行到基于云的自动化——具体取决于你所处的阶段和环境。
在本地运行 Test Suites
最直接的途径是:点击 Apidog 客户端中的 Run。它在你的本地机器上执行,适合在开发和调试期间进行小型、快速的检查。在运行配置中,你可以切换运行环境,并设置运行完成后的通知。
运行完成后,Apidog 会在 UI 中生成一份测试报告。它会按照执行顺序列出每个 endpoint 测试用例和测试场景,并附带清晰的通过/失败状态。你可以打开单个项目查看更多详情。
通过 CLI 运行 Test Suites
对于大型测试集或无头(headless)环境(例如没有 GUI 的服务器),Apidog CLI 是更好的选择——它将 Apidog 的测试执行能力带到了任何终端。
要在命令行中运行 suite:
- 安装 Apidog CLI 并确保其为最新版本。
- 打开 test suite 的 CI/CD 标签页,复制生成的命令:
将该命令粘贴到你的终端中。它遵循以下模式,你的 access token 和 test suite ID 会自动填充:
npx apidog-cli@latest test-suite-run -t <ACCESS_TOKEN> -s <TEST_SUITE_ID>
你可以获得与 UI 中相同的流程和结果。
运行完成后,当前目录中会创建一个 apidog-reports/ 文件夹,其中包含 HTML 格式的测试报告。
该命令也是 CI/CD 集成的基础模块。你可以将其插入到 Jenkins、GitLab CI 或 GitHub Actions 中,在代码合并等关键节点触发回归测试。例如,一个最小化的 GitHub Actions 作业:
name: API regression
on:
pull_request:
jobs:
apidog:
runs-on: ubuntu-latest
steps:
- name: Run Apidog test suite
run: npx apidog-cli@latest test-suite-run -t ${{ secrets.APIDOG_TOKEN }} -s <TEST_SUITE_ID>
通过定时任务(Scheduled Tasks)运行 Test Suites
Apidog 还支持定时任务(Scheduled Tasks)。要进行设置,打开 test suite 的 Scheduled Tasks 标签页,创建任务,并设置其运行计划和运行环境。
与本地运行不同,定时任务必须在自托管的 Runner 上运行。
Runner 是一个轻量级程序,你的团队可以将其部署在内部服务器上。在 Runner 上运行定时任务可以避免因本地机器关机或无法访问而导致的失败,并且你可以利用服务器的资源来运行更大型的测试。
配置定时任务后,Apidog 会在指定时间在 Runner 上运行 test suite,并上传运行历史记录和报告。你还可以配置失败通知,以便在出现问题时迅速通知相关人员。
总结
静态编排能将专用测试的范围严格限定;动态编排则让回归测试套件随项目自动增长,无需持续的手动更新。结合本地运行、CLI 集成和定时任务,test suites 可以完美融入你工作流程的每个阶段——从开发期间的快速检查,到 CI/CD 中的自动化回归,再到生产环境的定时检查。
要了解有关 test suites 的更多信息,请访问 Apidog 文档。试着创建你的第一个 test suite,编排你现有的测试,逐步构建一个可持续的自动化回归体系。










Top comments (0)