HTTP, REST, статусы

Тема дорожной карты · QA-инженер

HTTP для QA — это фундаментальные знания протокола, позволяющие инженерам по качеству корректно тестировать веб-сервисы, интерпретировать сетевой трафик и диагностировать сбои интеграции на уровне коммуникации. Каждое взаимодействие с веб-приложением — будь то загрузка страницы браузером или вызов REST API микросервиса — представляет собой HTTP-транзакцию с методом (GET, POST, PUT, PATCH, DELETE), URL, заголовками запроса (включая Authorization, Content-Type, Accept и Cookie), опциональным телом и ответом с кодом статуса (1xx информационные, 2xx успех, 3xx перенаправление, 4xx ошибка клиента, 5xx ошибка сервера), заголовками ответа и телом payload. QA-инженеры ежедневно применяют знания HTTP в Postman для построения и валидации API-запросов, в перехвате сети через DevTools Protocol Selenium/Playwright, в прокси-сессиях Burp Suite и OWASP ZAP для тестирования безопасности, а также в скриптах JMeter или k6, воспроизводящих HTTP-трафик в масштабе для нагрузочного тестирования. HTTP для QA также охватывает HTTPS и валидацию TLS-сертификата, мультиплексирование HTTP/2, поведение CORS-preflight, директивы кэширования (Cache-Control, ETag, If-None-Match) и WebSocket-handshake — всё это тестируется с помощью browser DevTools и может выявлять ошибки, невидимые чисто функциональным UI-тестам.

Как это работает

HTTP, REST, статусы для QA: HTTP request/response (метод, статус, заголовки, тело), DOM (браузер парсит HTML → дерево элементов, которыми манипулирует JavaScript), DevTools (вкладки Elements, Network, Console, Application), cookies + localStorage, REST vs GraphQL, статус-коды. Не обязательно писать frontend-код, но нужно его читать достаточно для отладки. Browser-автоматизация работает с DOM, не с JS-runtime — понимание обоих делает Playwright/Selenium-тесты надёжными.

Когда применять

Освойте Chrome DevTools первым — 80% вопросов "почему не работает". Умейте инспектировать сетевой запрос, смотреть его ответ, ре-играть с другим cookie. Умейте смотреть + редактировать localStorage / cookies. Знайте CSS-селекторы (их использует каждый UI-automation фреймворк). Читайте HTML страницы, которую тестируете — страница сама говорит, какие локаторы стабильны.

Типичные ошибки

Ловушки HTTP, REST, статусы: не открывают DevTools — отрендеренная страница рассказывает только половину; CSS-селекторы зависят от автогенерированных имён классов (.css-xyz123) — они меняются на каждой сборке; игнор вкладки Network при "странице медленно" (ответ почти всегда там).

Связанные понятия

Полезные ресурсы