Что такое сниффер трафика и для чего он используется в тестировании?

«Что такое сниффер трафика и для чего он используется в тестировании?» — вопрос из категории Инструменты тестирования, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Сниффер трафика (анализатор пакетов) — это инструмент для перехвата, записи и анализа сетевого трафика между клиентом и сервером.

Основные цели использования в тестировании:

  1. Отладка API и веб-сервисов:

    • Проверка корректности HTTP/HTTPS запросов и ответов (заголовки, тело, коды состояния).
    • Анализ форматов данных (JSON, XML).
  2. Тестирование безопасности:

    • Поиск утечек конфиденциальных данных в открытом тексте.
    • Проверка корректности применения шифрования (HTTPS/TLS).
  3. Анализ производительности:

    • Замер времени отклика сервера.
    • Выявление лишних или дублирующихся сетевых запросов.
  4. Обратная разработка (reverse engineering):

    • Анализ протоколов взаимодействия мобильных или десктопных приложений.

Популярные инструменты: Wireshark (глубокий анализ любых протоколов), Fiddler/Charles Proxy (удобны для HTTP/HTTPS-трафика веб и мобильных приложений).

Пример перехвата запроса в Fiddler:

GET /api/v1/users HTTP/1.1
Host: api.example.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
Accept: application/json

Важно: Использовать снифферы следует только в тестовых средах или с явного согласия владельца системы. Перехват трафика без разрешения может быть незаконным.