콘텐츠로 이동

유틸리티

입력min, max (숫자), seed
출력result
op반환값
intminmax 사이의 정수
float부동소수점 수
stringlength 글자의 문자열
boolean불리언
pickitems 에서 뽑은 요소 하나

seed 필드(숫자 또는 문자열)는 추출을 결정적으로 만듭니다. 다양한 데이터를 쓰면서도 재현 가능한 테스트를 얻을 수 있게 해 주는 것이 바로 이것입니다. 결코 재현할 수 없는 {{$random…}} 헬퍼와의 결정적인 차이입니다.

입력value, schema (문자열)
출력valid, invalid, errors
설정schema — draft-07, 2019-09 또는 2020-12 형식의 JSON Schema

응답이 계약을 지키는지 확인하기에 가장 알맞은 도구입니다. errorsLog에 연결하십시오. 출력이 위반 사항을 하나하나 알려 주므로 CI 실패를 바로 활용할 수 있습니다.

HTTP 요청 ──response[body]──► Schema validate
├─ valid ──► (이후 처리)
├─ invalid ──► Throw
└─ errors ──► Log
입력path (문자열)
출력content (문자열)
설정path — 절대 경로, 또는 열려 있는 .restorm 파일 기준의 상대 경로

시나리오가 사용자의 머신과 CI 사이에서 그대로 통하게 하려면 상대 경로를 쓰는 것이 좋습니다.

입력path (문자열), content
출력없음
설정path, mode: replace (기본값) 또는 append
입력message (문자열), data
출력없음
설정level: debug, info, warn, error

추적을 담당하는 바로 그 박스입니다. 실행 로그와 명령줄 출력에서 기본으로 표시되는 것은 이 박스의 항목뿐입니다. 엔진의 항목은 --all-logs 를 붙여야 추가됩니다.

다시 말해, Log로 기록한 내용이 CI의 아티팩트에서 다시 만나게 되는 내용입니다.

입력a (관측한 값), b (기대한 값), message (문자열)
출력then (성공), else (실패)
설정operator, a, b, message

사용할 수 있는 연산자는 다음과 같습니다.

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

message 필드가 로그에서 실패를 이해할 수 있게 만들어 줍니다. “오류” 가 아니라 무엇을 기대했는지를 적으십시오.

입력message (문자열)
출력없음 — 이 박스에는 done 포트가 없습니다
설정message

실행을 의도적으로 실패시킵니다. CI에서 종료 코드 1을 내게 하는 것이 바로 이것입니다. 중요한 어서션의 else 출력이나 스키마 검증의 invalid 에 연결하십시오.