Как тестировать REST API?
- Что проверять при тестировании API?
- Как вы работаете с Postman?
- Что такое REST?
API тестируют без интерфейса: отправляем запросы (Postman, curl) и проверяем статус, тело ответа, схему данных, побочные эффекты и обработку ошибок.
- Позитивные: корректные данные → верный ответ и изменения в системе
- Негативные: неверные типы, пустые и лишние поля, без авторизации, чужой ресурс
А ещё Тестирование API находит ошибки раньше UI и не зависит от вёрстки
Подробно
REST — стиль построения API: ресурсы с адресами (/users/15), действия — HTTP-методами, данные — обычно в JSON, сервер не хранит состояние между запросами.
Что проверять:
- статус ответа — 200/201 при успехе, нужный 4xx при ошибке, никогда 500 на неверных данных;
- тело ответа — значения полей, типы данных, формат дат, соответствие документации (часто Swagger/OpenAPI);
- схему — обязательные поля на месте, лишних чувствительных полей нет (например, хеша пароля);
- побочные эффекты — данные действительно создались или изменились: повторный GET, проверка в базе;
- негативные сценарии — пустое тело, неверные типы (строка вместо числа), слишком длинные значения, лишние поля, отсутствующие обязательные;
- авторизацию — запрос без токена (401), с чужим токеном к чужому ресурсу (403 или 404), с истёкшим токеном;
- граничные значения и пагинацию, идемпотентность повторных запросов, время ответа.
Postman — инструмент для ручного тестирования API: коллекции запросов, переменные окружения (стенд, токен), проверки в Tests, запуск коллекции целиком.
Пример
POST /api/users с телом {"email": "a@b.ru", "age": 25} → 201 и id в ответе; затем GET /api/users/{id} возвращает те же данные. Негативные: age: "двадцать" → 400/422 с понятной ошибкой; тот же email второй раз → 409; без токена → 401.
Что хотят услышать
- Что такое REST и как устроен запрос.
- Список проверок: статус, тело, схема, побочные эффекты, негативные, авторизация.
- Опыт с Postman или другим инструментом.
Частые ошибки
- Проверять только статус 200.
- Не проверять доступ к чужим данным.
Проверьте себя
Несколько верных вариантов. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✓Проверять статус, тело ответа и схему данных
- ✓Проверять запросы без авторизации и к чужому ресурсу
- ✗Достаточно проверить код ответа 200 — тело и схему проверяет фронтенд
- ✓Проверять побочные эффекты — изменения в системе
Что спросят дальше
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.