Headless-körning och kontinuerlig integration
Ett scenario som byggts i gränssnittet körs utan fönster från kommandoraden. Det är vägen som förvandlar dina API-tester till ett steg i en pipeline.

restorm \ --open ./projet.restorm \ --run "Find pets by status" \ --headless \ --param status=availableArgumenten
Section titled “Argumenten”| Argument | Roll |
|---|---|
--open <sökväg>, -o | Projektet som ska öppnas. Obligatoriskt med --run |
--run <mål> | Scenariot som ska köras. Att det finns med aktiverar kommandoradsläget |
--by <name|id> | Hur --run pekar ut scenariot: med namn (standard) eller med identifierare |
--headless | Inget fönster. Utan det visas fönstret medan loggen rullar i konsolen |
--param namn=värde | Ett värde för en ingångsparameter i scenariot (en Input / Param-ruta). Kan upprepas |
--all-logs | Tar med motorns poster; som standard skickas bara de från åtgärden Log |
--out <fil> | Skriver också loggen till en fil, efter hand |
--clear-settings, -cls | Återställer inställningarna före starten |
En felformad --param (utan =) rapporteras på felutmatningen och ignoreras.
namn= (tomt värde) accepteras.
Värdena konverteras enligt parameterns deklarerade typ — se Variabler och data.
Slutkoderna
Section titled “Slutkoderna”| Kod | Betydelse |
|---|---|
0 | Scenariot avslutades korrekt |
1 | Misslyckande, avbrott, eller fel i motorn |
2 | Målet hittades inte, filen --out är oåtkomlig, eller --run utan --open |
3 | Nekad rättighet: RESTORM_TOKEN saknas, är ogiltig eller återkallad, planen räcker inte, eller kontrollpunkten går inte att nå |
Det är den konventionen som gör resultatet direkt användbart för en CI-runner.
Utmatningen
Section titled “Utmatningen”Loggen skrivs till standardutmatningen, en post i taget, så snart den produceras, som en YAML-sekvens:
- message: "🔵 [2026-07-29 10:30:00.123] Commande créée" data: { id: 4271 }Nivåerna föregås av en markering: ⚪ debug, 🔵 info, 🟠 warn, 🔴 error.
Raderna bryts aldrig — utmatningen förblir grep-bar. Felen går till
standardfelutmatningen.
Det är exakt den text som knappen ”kopiera loggen” i gränssnittet ger: samma format på båda sidor.
Hemligheterna i CI
Section titled “Hemligheterna i CI”Använd hemlighetskällan miljövariabel: hemligheten injiceras av din CI:s valv, Restorm bara läser den, och ingenting skrivs i projektet. Se Hemligheter.
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' # la version que vous voulez épingler 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' # la version que vous voulez épingler 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]Vad som är annorlunda i headless-läge
Section titled “Vad som är annorlunda i headless-läge”- Toast-åtgärderna gör ingenting; körningen fortsätter som vanligt.
- Parametrar kan inte efterfrågas interaktivt: skicka in dem alla med
--param, eller låt dem ta sitt standardvärde. - MCP-servern startar aldrig på en maskin utan skärm, oavsett inställning.
Skaffa en token
Section titled “Skaffa en token”Token RESTORM_TOKEN (med prefixet rstk_) genereras från kontrollpanelen för
ditt konto. Den är knuten till organisationen, inte till en person: det är
den token man lägger i CI:ns valv. Se
Konton och inloggning.