Aller au contenu

Utilitaires

Entréesmin, max (nombres), seed
Sortiesresult
opRenvoie
intUn entier entre min et max
floatUn flottant
stringUne chaîne de length caractères
booleanUn booléen
pickUn élément tiré de items

Le champ seed (un nombre ou une chaîne) rend le tirage déterministe : c’est ce qui permet d’avoir des données variées mais un test reproductible. C’est la différence essentielle avec les helpers {{$random…}}, qui ne sont jamais reproductibles.

Entréesvalue, schema (chaîne)
Sortiesvalid, invalid, errors
Configurationschema — un JSON Schema, en draft-07, 2019-09 ou 2020-12

L’outil de choix pour vérifier qu’une réponse respecte son contrat. Branchez errors sur un Log : la sortie détaille chaque violation, ce qui rend un échec de CI directement exploitable.

Requête HTTP ──response[body]──► Validation schéma
├─ valid ──► (suite)
├─ invalid ──► Throw
└─ errors ──► Log
Entréespath (chaîne)
Sortiescontent (chaîne)
Configurationpath — absolu, ou relatif au fichier .restorm ouvert

Le chemin relatif est ce qu’il faut utiliser pour que le scénario reste portable entre votre machine et la CI.

Entréespath (chaîne), content
Sortiesaucune
Configurationpath, mode : replace (défaut) ou append
Entréesmessage (chaîne), data
Sortiesaucune
Configurationlevel : debug, info, warn, error

C’est la boîte de traçabilité. Ses entrées sont les seules affichées par défaut dans le journal d’exécution et sur la sortie de la ligne de commande — les entrées du moteur ne s’ajoutent qu’avec --all-logs.

Autrement dit : ce que vous écrivez avec Log est ce que vous retrouverez dans les artefacts de votre CI.

Entréesa (valeur observée), b (valeur attendue), message (chaîne)
Sortiesthen (réussite), else (échec)
Configurationoperator, a, b, message

Opérateurs disponibles :

eq · ne · lt · lte · gt · gte · contains · isString · isNumber · isBoolean · isArray · isObject · isNull · exists · isEmpty · matchesRegex · isOneOf · deepEquals · lengthEq · lengthGt · lengthLt

Le champ message est ce qui rendra l’échec compréhensible dans le journal : écrivez-y ce qu’on attendait, pas « erreur ».

Entréesmessage (chaîne)
Sortiesaucune — cette boîte n’a pas de port done
Configurationmessage

Fait échouer l’exécution délibérément. C’est ce qui donne un code de sortie 1 en CI : branchez-la sur la sortie else de vos assertions critiques ou sur invalid d’une validation de schéma.