Ir al contenido

Utilidades

Entradasmin, max (números), seed
Salidasresult
opDevuelve
intUn entero entre min y max
floatUn número en coma flotante
stringUna cadena de length caracteres
booleanUn booleano
pickUn elemento extraído de items

El campo seed (un número o una cadena) hace que el sorteo sea determinista: es lo que permite tener datos variados pero una prueba reproducible. Es la diferencia esencial con los helpers {{$random…}}, que nunca son reproducibles.

Entradasvalue, schema (cadena)
Salidasvalid, invalid, errors
Configuraciónschema — un JSON Schema, en draft-07, 2019-09 o 2020-12

Es la herramienta idónea para comprobar que una respuesta respeta su contrato. Conecte errors a un Log: la salida detalla cada infracción, lo que hace que un fallo de CI sea directamente aprovechable.

Requête HTTP ──response[body]──► Validation schéma
├─ valid ──► (suite)
├─ invalid ──► Throw
└─ errors ──► Log
Entradaspath (cadena)
Salidascontent (cadena)
Configuraciónpath — absoluta, o relativa al archivo .restorm abierto

La ruta relativa es lo que conviene usar para que el escenario siga siendo portátil entre su máquina y la CI.

Entradaspath (cadena), content
Salidasninguna
Configuraciónpath, mode: replace (por defecto) o append
Entradasmessage (cadena), data
Salidasninguna
Configuraciónlevel: debug, info, warn, error

Es la caja de trazabilidad. Sus entradas son las únicas que se muestran por defecto en el registro de ejecución y en la salida de la línea de comandos: las entradas del motor solo se añaden con --all-logs.

En otras palabras: lo que usted escribe con Log es lo que encontrará en los artefactos de su CI.

Entradasa (valor observado), b (valor esperado), message (cadena)
Salidasthen (éxito), else (fallo)
Configuraciónoperator, a, b, message

Operadores disponibles:

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

El campo message es lo que hará comprensible el fallo en el registro: escriba ahí lo que se esperaba, no «error».

Entradasmessage (cadena)
Salidasninguna: esta caja no tiene puerto done
Configuraciónmessage

Hace fallar la ejecución deliberadamente. Es lo que da un código de salida 1 en CI: conéctela a la salida else de sus aserciones críticas o a invalid de una validación de esquema.