无界面执行与持续集成
在界面中构建好的场景可以从命令行无界面执行。这正是把您的 API 测试变成流水线中一个步骤的途径。

restorm \ --open ./projet.restorm \ --run "Find pets by status" \ --headless \ --param status=available| 参数 | 作用 |
|---|---|
--open <path>、-o | 要打开的项目。与 --run 一起使用时必填 |
--run <target> | 要执行的场景。它的出现会启用命令行模式 |
--by <name|id> | --run 如何指定场景:按名称(默认)或按标识符 |
--headless | 不显示任何窗口。不加它时窗口会显示,同时日志在控制台滚动 |
--param name=value | 为场景的一个输入参数(一个 Input / Param 节点)提供值。可重复 |
--all-logs | 包含引擎的记录;默认只输出 Log 动作的记录 |
--out <file> | 同时把日志实时写入一个文件 |
--clear-settings、-cls | 在启动前重置偏好设置 |
格式不正确的 --param(缺少 =)会在错误输出上被指出并被忽略。
nom=(值为空)是被接受的。
这些值会按参数的声明类型进行转换 —— 参见 变量与数据。
| 码 | 含义 |
|---|---|
0 | 场景正常结束 |
1 | 失败、被取消,或引擎出错 |
2 | 找不到目标、--out 文件不可访问,或使用了 --run 却没有 --open |
3 | 权限被拒:RESTORM_TOKEN 缺失、无效或已吊销,套餐不足,或校验端点不可达 |
正是这套约定让结果可以被 CI runner 直接使用。
日志会写到标准输出,一次一条,产生即输出,形式为一个 YAML 序列:
- message: "🔵 [2026-07-29 10:30:00.123] Commande créée" data: { id: 4271 }各级别前面带一个圆点:⚪ debug、🔵 info、🟠 warn、🔴 error。行永远不会被截断 ——
输出始终可以用 grep 处理。错误会走标准错误输出。
这与界面上“复制日志”按钮产生的文本完全一致:两边格式相同。
CI 中的密钥
Section titled “CI 中的密钥”请使用环境变量这种密钥来源:密钥由您 CI 的保险库注入,Restorm 只负责读取, 项目中不会写入任何东西。参见密钥。
GitHub Actions
Section titled “GitHub Actions”name: Tests d'APIon: [push]
jobs: api: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4
- name: Installer Restorm env: RESTORM_VERSION: '1.4.2' # 您想要固定的版本 run: | curl -sSL -o restorm.deb \ "https://dl.restorm.app/restorm_${RESTORM_VERSION}_amd64.deb" sudo apt-get install -y ./restorm.deb
- name: Exécuter les tests de fumée env: RESTORM_TOKEN: ${{ secrets.RESTORM_TOKEN }} API_TOKEN: ${{ secrets.API_TOKEN }} run: | xvfb-run -a restorm \ --open ./api.restorm \ --run "Find pets by status" \ --headless \ --all-logs \ --out run.log \ --param status=available
- name: Publier le journal if: always() uses: actions/upload-artifact@v4 with: name: journal-restorm path: run.logGitLab CI
Section titled “GitLab CI”tests-api: image: ubuntu:24.04 variables: RESTORM_TOKEN: $RESTORM_TOKEN RESTORM_VERSION: '1.4.2' # 您想要固定的版本 before_script: - apt-get update && apt-get install -y curl xvfb - curl -sSL -o restorm.deb "https://dl.restorm.app/restorm_${RESTORM_VERSION}_amd64.deb" - apt-get install -y ./restorm.deb script: - > xvfb-run -a restorm --open ./api.restorm --run "Find pets by status" --headless --all-logs --out run.log --param status=$PET_STATUS artifacts: when: always paths: [run.log]无界面模式下有何不同
Section titled “无界面模式下有何不同”- Toast 动作不做任何事;执行照常继续。
- 参数无法通过交互方式询问:请用
--param全部提供,或者让它们取各自的默认值。 - 在没有显示环境的机器上,MCP 服务器永远不会启动,无论设置如何。
获取一个令牌
Section titled “获取一个令牌”RESTORM_TOKEN 令牌(以 rstk_ 为前缀)可从您账户的仪表板生成。它绑定到组织,
而不是绑定到个人:这正是应该放进 CI 保险库的那个令牌。参见
账户与登录。