Тестування API REST за 5 хвилин
Мета: почати зі специфікації OpenAPI й дійти до автоматизованого тесту, який перевіряє цілий шлях.
1. Імпортувати специфікацію (30 секунд)
Section titled “1. Імпортувати специфікацію (30 секунд)”Файл ▸ Імпортувати (Ctrl+I), а потім URL вашого openapi.json.
Restorm будує повне дерево: по теці на кожну мітку, по запиту на кожну операцію, типізовані параметри, документацію та заздалегідь під’єднані заголовки автентифікації з їхніми змінними.

Якщо у вашого API немає специфікації, вставте команду curl — див.
Імпорт команд cURL.
2. Заповнити середовище (1 хвилина)
Section titled “2. Заповнити середовище (1 хвилина)”Відкрийте теку середовищ, створену імпортом. Базовий URL уже там; доповніть змінну автентифікації, яку імпорт підготував за вас.
Створіть друге середовище, якщо перевіряєте кілька цілей, — перемикач у smartbar перемикає всю теку відразу.
3. Надіслати перший виклик (30 секунд)
Section titled “3. Надіслати перший виклик (30 секунд)”Відкрийте запит і натисніть Send. Показується відповідь: статус, час, заголовки, тіло у згортному переглядачі.
Якщо ви щось забули, обчислене значення під полем URL вам про це скаже.
4. Побудувати сценарій (2 хвилини)
Section titled “4. Побудувати сценарій (2 хвилини)”Клацніть правою кнопкою ▸ Додати ▸ Сценарій. Шлях «створити, перечитати, видалити»:
Запит HTTP «POST /clients» └─response──► Assert (eq, 201) └─► Задати змінну «clientId» ◄── селектор body.id
Запит HTTP «GET /clients/{id}» └─response──► Assert (eq, 200) └─► Перевірка схеми (JSON Schema клієнта)
Запит HTTP «DELETE /clients/{id}» └─response──► Assert (eq, 204)Усі три запити використовують {{clientId}} у своєму URL: змінну запуску,
задану на першому кроці, читають наступні.
З’єднайте їх у ланцюжок, під’єднавши порт done кожної перевірки до порту in
наступного запиту, — саме це гарантує порядок.
5. Перевірити (30 секунд)
Section titled “5. Перевірити (30 секунд)”Натисніть Запуск. Журнал наповнюється; додайте дію Log після кожного кроку, щоб простежити те, що важливо.
Під’єднайте дію Throw до виходу else своїх критичних перевірок: саме це
завалить завдання CI.
6. Автоматизувати (30 секунд)
Section titled “6. Автоматизувати (30 секунд)”RESTORM_TOKEN=rstk_… restorm \ --open ./api.restorm \ --run "Parcours client" \ --headless \ --out run.logКод виходу 0, якщо все проходить, інакше 1. Приклади для GitHub Actions і
GitLab CI див. на сторінці
Безекранне виконання та CI.