Automatizimi i testeve të API-ve në integrimin e vazhdueshëm
Një skenar i ndërtuar brenda ndërfaqes punon ashtu siç është brenda pipeline-it tuaj. Ky udhëzues mbulon kalimin në shkallë.
Parakushtet
Section titled “Parakushtet”- Një plan Pro ose Enterprise.
- Një token organizate (
rstk_…) për ta vendosur brenda arkës së sekreteve të CI-së suaj. (Krijimi i këtij token-i vetë nga paneli po vjen së shpejti.)
Parimi
Section titled “Parimi”RESTORM_TOKEN=$RESTORM_TOKEN restorm \ --open ./api.restorm \ --run "Tests de fumée" \ --headless \ --all-logs \ --out run.log \ --param baseUrl=$BASE_URLKod dalje 0 = sukses, 1 = dështim i skenarit, 2 = gabim thirrjeje,
3 = e drejtë e refuzuar.
Nevojitet një ekran virtual
Section titled “Nevojitet një ekran virtual”Restorm është një aplikacion desktopi: edhe pa dritare, ai ka nevojë për një
server ekrani. Mbi një runner Linux, vendosini përpara xvfb-run -a.
xvfb-run -a restorm --open ./api.restorm --run "Tests de fumée" --headlessSekretet
Section titled “Sekretet”Mos shkruani kurrë një sekret brenda projektit. Deklarojini variablat tuaja të ndjeshme me burimin e sekreteve variabël mjedisi; arka e CI-së suaj i injekton ato, ndërsa Restorm i lexon. Shihni Sekretet.
env: API_TOKEN: ${{ secrets.API_TOKEN }}Parametrizimi sipas mjedisit
Section titled “Parametrizimi sipas mjedisit”Dy qasje plotësuese:
- Një parametër skenari i tipizuar
environment:--param Env=staging. I njëjti skenar punon kundrejt cilitdo cak. - Parametra të thjeshtë:
--param baseUrl=…,--param tenant=….
Shndërrimi ndjek tipin e deklaruar të parametrit dhe një shndërrim i pamundur e bën nisjen të dështojë menjëherë, në vend që të ekzekutohet me një vlerë të gabuar. Shihni Variablat dhe të dhënat.
Publikimi i regjistrit
Section titled “Publikimi i regjistrit”--out run.log e shkruan regjistrin vazhdimisht. Publikojeni si artefakt, edhe
kur puna dështon — pikërisht atëherë ai shërben.
- uses: actions/upload-artifact@v4 if: always() with: name: journal-restorm path: run.logShkrimi i skenarëve të lexueshëm në CI
Section titled “Shkrimi i skenarëve të lexueshëm në CI”Disa zakone që ndryshojnë gjithçka kur shfaqet një punë e kuqe në orën 3 të mëngjesit:
- Mesazhe pohimi të qarta. Fusha
messagee veprimit Pohim është ajo që do të shfaqet brenda regjistrit: shkruani aty se çfarë pritej. - Regjistrim në hapat kyçe. Pa
--all-logs, lëshohen vetëm zërat e veprimit Log: ky është fija juaj narrative. - Validim skeme në vend të pohimeve fushë pas fushe. Lidhni daljen
errorstë Valido një skemë me një Log: merrni listën e saktë të shkeljeve. - Throw mbi daljet
elsekritike, që kodi i daljes ta pasqyrojë dështimin. - Retry rreth thirrjeve të paqëndrueshme të rrjetit, në vend që të pranoni teste të ndërprera. Shihni Kontrollin.
Pastrimi
Section titled “Pastrimi”Zinxhironi pastrimin mbi portën done të skenarit kryesor: done pret që
i gjithë nëngrafi të ketë përfunduar. Shihni
Portat dhe lidhjet.
Kurthe që duhen njohur
Section titled “Kurthe që duhen njohur”| Kurthi | Zgjidhja |
|---|---|
| Puna pret një hyrje | Jepini të gjithë parametrat me --param; në headless, asgjë nuk mund të kërkohet |
| Një veprim Toast nuk shfaqet | Kjo është normale: ai nuk ka efekt në headless. Përdorni Log |
| Serveri MCP nuk shfaqet | Kjo është e qëllimshme: pa një ekran të vërtetë, ai nuk niset kurrë |
Dalje 3 | Token-i ose plani — mesazhi saktëson cilin nga katër rastet |
| Skedari i projektit ka lëvizur | --open pranon një shteg relativ ndaj depos: mbajeni relativ |
Shembuj të plotë
Section titled “Shembuj të plotë”Pipeline-t GitHub Actions dhe GitLab CI gjenden te Ekzekutimi headless dhe CI.