콘텐츠로 이동

헤드리스 실행과 지속적 통합

인터페이스에서 만든 시나리오는 명령줄에서 창 없이 실행됩니다. API 테스트를 파이프라인의 한 단계로 바꾸어 주는 경로입니다.

에디터에 표시된 “Find pets by status” 시나리오: status라는 이름의 Input/Param 액션, “Finds Pets by status” 요청, 그리고 Log

Terminal window
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의 보관소에서 주입되고, Restorm은 그것을 읽기만 하며, 프로젝트에는 아무것도 기록되지 않습니다. 비밀 값을 참고하십시오.

name: Tests d'API
on: [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.log
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]
  • Toast 액션은 아무 일도 하지 않습니다. 실행은 그대로 계속됩니다.
  • 파라미터를 대화식으로 물어볼 수 없습니다. --param 으로 모두 전달하거나, 기본값을 쓰게 하십시오.
  • 디스플레이가 없는 머신에서는 설정이 무엇이든 MCP 서버가 절대 시작되지 않습니다.

RESTORM_TOKEN 토큰(접두사 rstk_)은 계정 대시보드에서 생성합니다. 개인이 아니라 조직에 귀속되며, CI 보관소에 넣는 것이 바로 이 토큰입니다. 계정과 로그인을 참고하십시오.