Ответ
Формат тела HTTP-ответа определяется заголовком Content-Type в ответе сервера. Тестировщик должен уметь работать с основными форматами.
Распространенные форматы ответа:
application/json— стандарт для REST API.{ "status": "success", "data": { "id": 789, "email": "user@example.com" } }application/xml/text/xml— используется в SOAP и некоторых legacy-системах.<response> <status>success</status> <id>789</id> </response>text/html— ответ веб-сервера при запросе страницы.text/plain— простой текст, часто для статусных сообщений.application/octet-streamили другие бинарные типы — для скачивания файлов (ZIP, PDF, изображения).
Практические аспекты для тестирования:
- Парсинг и валидация: Ответ в формате JSON можно проверить на соответствие JSON Schema. XML можно валидировать по XSD.
- Извлечение данных: Для последующих запросов (например, токена аутентификации) нужно уметь извлекать значения из структуры ответа.
# Пример на Python с библиотекой requests response = requests.post(login_url, json=credentials) response_data = response.json() # Парсим JSON-ответ auth_token = response_data["access_token"] # Извлекаем токен - Проверка заголовка: Всегда проверяйте, что
Content-Typeв ответе соответствует ожидаемому и документации API. - Обработка ошибок: API может возвращать ошибки в том же формате, что и успешные ответы (например, JSON с полем
"error"), но с другим HTTP-статусом (4xx, 5xx).