Tiện ích
Random (ngẫu nhiên)
Section titled “Random (ngẫu nhiên)”| Đầu vào | min, max (số), seed |
| Đầu ra | result |
op | Trả về |
|---|---|
int | Một số nguyên giữa min và max |
float | Một số thực dấu phẩy động |
string | Một chuỗi gồm length ký tự |
boolean | Một giá trị luận lý |
pick | Một phần tử lấy từ items |
Trường seed (một con số hoặc một chuỗi) làm cho việc rút ngẫu nhiên trở
nên tất định: đây chính là thứ cho phép có dữ liệu đa dạng nhưng bài kiểm
thử vẫn tái lập được. Đó là khác biệt cốt lõi so với các helper {{$random…}},
vốn không bao giờ tái lập được.
Schema validate (kiểm tra schema)
Section titled “Schema validate (kiểm tra schema)”| Đầu vào | value, schema (chuỗi) |
| Đầu ra | valid, invalid, errors |
| Cấu hình | schema — một JSON Schema, ở draft-07, 2019-09 hoặc 2020-12 |
Đây là công cụ được ưu tiên để kiểm tra rằng một phản hồi tôn trọng hợp đồng của
nó. Hãy đấu errors vào một Log: đầu ra sẽ nêu chi tiết từng vi phạm, khiến
một lần CI thất bại trở nên dùng được ngay.
Yêu cầu HTTP ──response[body]──► Schema validate ├─ valid ──► (phần tiếp theo) ├─ invalid ──► Throw └─ errors ──► LogRead file (đọc tệp)
Section titled “Read file (đọc tệp)”| Đầu vào | path (chuỗi) |
| Đầu ra | content (chuỗi) |
| Cấu hình | path — tuyệt đối, hoặc tương đối với tệp .restorm đang mở |
Đường dẫn tương đối chính là thứ bạn nên dùng để kịch bản vẫn di chuyển được giữa máy của bạn và hệ thống CI.
Write file (ghi tệp)
Section titled “Write file (ghi tệp)”| Đầu vào | path (chuỗi), content |
| Đầu ra | không có |
| Cấu hình | path, mode: replace (mặc định) hoặc append |
Log (nhật ký)
Section titled “Log (nhật ký)”| Đầu vào | message (chuỗi), data |
| Đầu ra | không có |
| Cấu hình | level: debug, info, warn, error |
Đây chính là chiếc hộp truy vết. Các mục của nó là những mục duy nhất được
hiển thị theo mặc định trong nhật ký chạy và trên đầu ra của
dòng lệnh — các mục của cỗ máy chỉ
được thêm vào khi có --all-logs.
Nói cách khác: những gì bạn viết bằng Log chính là những gì bạn sẽ tìm lại được trong các artefact của hệ thống CI.
Assert (khẳng định)
Section titled “Assert (khẳng định)”| Đầu vào | a (giá trị quan sát được), b (giá trị mong đợi), message (chuỗi) |
| Đầu ra | then (thành công), else (thất bại) |
| Cấu hình | operator, a, b, message |
Các toán tử hiện có:
eq · ne · lt · lte · gt · gte · contains · isString ·
isNumber · isBoolean · isArray · isObject · isNull · exists ·
isEmpty · matchesRegex · isOneOf · deepEquals · lengthEq ·
lengthGt · lengthLt
Trường message chính là thứ làm cho một lần thất bại trở nên dễ hiểu trong
nhật ký: hãy viết vào đó điều mà bạn mong đợi, đừng viết “lỗi”.
Throw (ném lỗi)
Section titled “Throw (ném lỗi)”| Đầu vào | message (chuỗi) |
| Đầu ra | không có — chiếc hộp này không có cổng done |
| Cấu hình | message |
Làm lần chạy thất bại một cách có chủ ý. Đây là thứ tạo ra mã thoát 1 trong
CI: hãy đấu nó vào đầu ra else của những khẳng định then chốt hoặc vào
invalid của một phép kiểm tra schema.