Utilitare
Aleatoriu
Section titled “Aleatoriu”| Intrări | min, max (numere), seed |
| Ieșiri | result |
op | Returnează |
|---|---|
int | Un întreg între min și max |
float | Un flotant |
string | Un șir de length caractere |
boolean | Un boolean |
pick | Un element extras din items |
Câmpul seed (un număr sau un șir) face extragerea deterministă: este
ceea ce permite să aveți date variate, dar un test reproductibil. Aceasta este
diferența esențială față de helperii {{$random…}}, care nu sunt niciodată
reproductibili.
Validare schemă
Section titled “Validare schemă”| Intrări | value, schema (șir) |
| Ieșiri | valid, invalid, errors |
| Configurare | schema — un JSON Schema, în draft-07, 2019-09 sau 2020-12 |
Unealta ideală pentru a verifica dacă un răspuns își respectă contractul.
Conectați errors la un Log: ieșirea detaliază fiecare încălcare, ceea ce
face un eșec de CI direct utilizabil.
Cerere HTTP ──response[body]──► Validare schemă ├─ valid ──► (continuare) ├─ invalid ──► Throw └─ errors ──► LogCitește fișier
Section titled “Citește fișier”| Intrări | path (șir) |
| Ieșiri | content (șir) |
| Configurare | path — absolut sau relativ la fișierul .restorm deschis |
Calea relativă este cea de folosit pentru ca scenariul să rămână portabil între mașina dumneavoastră și CI.
Scrie fișier
Section titled “Scrie fișier”| Intrări | path (șir), content |
| Ieșiri | niciuna |
| Configurare | path, mode: replace (implicit) sau append |
Log (jurnal)
Section titled “Log (jurnal)”| Intrări | message (șir), data |
| Ieșiri | niciuna |
| Configurare | level: debug, info, warn, error |
Aceasta este cutia de trasabilitate. Intrările ei sunt singurele afișate
implicit în jurnalul de execuție și la ieșirea
liniei de comandă — intrările
motorului se adaugă numai cu --all-logs.
Altfel spus: ceea ce scrieți cu Log este ceea ce veți regăsi în artefactele sistemului dumneavoastră de CI.
Assert (aserțiune)
Section titled “Assert (aserțiune)”| Intrări | a (valoarea observată), b (valoarea așteptată), message (șir) |
| Ieșiri | then (reușită), else (eșec) |
| Configurare | operator, a, b, message |
Operatori disponibili:
eq · ne · lt · lte · gt · gte · contains · isString ·
isNumber · isBoolean · isArray · isObject · isNull · exists ·
isEmpty · matchesRegex · isOneOf · deepEquals · lengthEq ·
lengthGt · lengthLt
Câmpul message este cel care va face eșecul de înțeles în jurnal: scrieți acolo
ce se aștepta, nu „eroare”.
Throw (ridică o eroare)
Section titled “Throw (ridică o eroare)”| Intrări | message (șir) |
| Ieșiri | niciuna — această cutie nu are port done |
| Configurare | message |
Face să eșueze execuția în mod deliberat. Este ceea ce dă un cod de ieșire 1
în CI: conectați-o la ieșirea else a aserțiunilor dumneavoastră critice sau la
invalid al unei validări de schemă.