Ответ
При тестировании API параметры можно передавать в четырех основных местах HTTP-запроса:
-
Query Parameters (Параметры строки запроса)
- Место: Добавляются в URL после знака
?в форматеключ=значение, разделяются&. - Назначение: Используются для фильтрации, сортировки, пагинации, обычно в GET-запросах.
- Пример URL:
GET /api/users?role=admin&active=true
- Место: Добавляются в URL после знака
-
Path Parameters (Параметры пути)
- Место: Являются частью самого пути URL, часто обозначаются фигурными скобками в спецификации.
- Назначение: Используются для идентификации конкретного ресурса.
- Пример URL:
GET /api/users/{userId}/orders→GET /api/users/123/orders
-
Request Body (Тело запроса)
- Место: Отдельная часть запроса, не видимая в URL.
- Назначение: Для передачи сложных данных при создании (POST) или обновлении (PUT, PATCH) ресурсов.
- Форматы: JSON (наиболее распространен), XML,
x-www-form-urlencoded. - Пример (JSON):
{ "name": "John Doe", "email": "john@example.com" }
-
Headers (Заголовки)
- Место: Метаданные HTTP-запроса.
- Назначение: Передача служебной информации: авторизация (
Authorization: Bearer <token>), тип контента (Content-Type: application/json), управление кэшем.
С точки зрения тестировщика важно:
- Проверять валидацию параметров во всех этих местах (корректные, некорректные, граничные значения).
- Понимать, какой метод (GET, POST и т.д.) с каким местом передачи параметров используется в тестируемом API.
- Использовать инструменты вроде Postman или код для отправки таких запросов.