Статус-коды HTTP — это стандартные трехзначные числа, возвращаемые сервером в ответ на запрос клиента. Они показывают результат обработки запроса.
Категории статус-кодов:
Часто встречающиеся статус-коды:
| Код | Название | Описание |
|---|---|---|
| 200 | OK | Запрос успешно обработан. |
| 201 | Created | Ресурс успешно создан. |
| 204 | No Content | Запрос успешно обработан, ответ не содержит тела. |
| 301 | Moved Permanently | Ресурс перемещен на новый постоянный URL. |
| 302 | Found | Ресурс временно доступен по другому URL. |
| 304 | Not Modified | Ресурс не изменялся с момента последнего запроса. |
| 400 | Bad Request | Сервер не смог понять запрос из-за неверного синтаксиса. |
| 401 | Unauthorized | Требуется аутентификация. |
| 403 | Forbidden | Доступ к ресурсу запрещен. |
| 404 | Not Found | Запрашиваемый ресурс не найден. |
| 405 | Method Not Allowed | Метод HTTP, используемый в запросе, не разрешен для ресурса. |
| 409 | Conflict | Конфликт при обработке запроса, например, создание существующего ресурса. |
| 422 | Unprocessable Entity | Синтаксически правильный запрос, но семантически неверный. |
| 500 | Internal Server Error | Внутренняя ошибка сервера. |
| 501 | Not Implemented | Сервер не поддерживает функционал, необходимый для выполнения запроса. |
| 503 | Service Unavailable | Сервер временно недоступен. |
При тестировании API статус-коды являются ключевым индикатором успешности или провала теста. Проверка корректного статус-кода для каждого типа запроса (GET, POST, PUT, DELETE и т.д.) в различных сценариях (успех, ошибка валидации, отсутствие ресурса, авторизация) является основой функционального тестирования API.
Например, при создании нового ресурса (POST-запрос) ожидается статус 201 Created, при получении несуществующего ресурса (GET-запрос) - 404 Not Found.
python