헤드리스 실행과 지속적 통합
인터페이스에서 만든 시나리오는 명령줄에서 창 없이 실행됩니다. 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 (= 이 없는 것)은 표준 오류로 보고되고 무시됩니다.
name= (빈 값)은 허용됩니다.
값은 파라미터의 선언된 타입에 따라 변환됩니다 — 변수와 데이터를 참고하십시오.
| 코드 | 의미 |
|---|---|
0 | 시나리오가 정상적으로 끝났습니다 |
1 | 실패, 취소, 또는 엔진 오류 |
2 | 대상을 찾을 수 없음, --out 파일에 접근할 수 없음, 또는 --open 없는 --run |
3 | 권한 거부: RESTORM_TOKEN 이 없거나 유효하지 않거나 폐기됨, 플랜이 부족함, 또는 확인 엔드포인트에 도달할 수 없음 |
이 규약 덕분에 결과를 CI 러너에서 그대로 활용할 수 있습니다.
로그는 표준 출력에 생성되는 즉시 한 항목씩 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 서버가 절대 시작되지 않습니다.
RESTORM_TOKEN 토큰(접두사 rstk_)은 계정 대시보드에서 생성합니다. 개인이
아니라 조직에 귀속되며, CI 보관소에 넣는 것이 바로 이 토큰입니다.
계정과 로그인을 참고하십시오.