Какие ключевые функции предоставляет прокси-инструмент Charles для тестирования?

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

Ответ

Charles Proxy — это инструмент для отладки и анализа сетевого трафика, критически важный для тестирования клиент-серверных приложений.

Основные функции:

  1. Перехват и просмотр трафика (HTTP/HTTPS)

    • Позволяет видеть все запросы и ответы между клиентом и сервером в структурированном виде (заголовки, тело, timing).
  2. SSL Proxying

    • Расшифровка HTTPS-трафика. Требует установки сертификата Charles на устройство/в доверенное хранилище.
  3. Точки останова (Breakpoints)

    • Приостановка запроса или ответа для их модификации «на лету» перед отправкой. Полезно для тестирования обработки ошибок.
  4. Подмена ответов (Map Local / Map Remote)

    • Map Local: Замена ответа от сервера содержимым локального файла (JSON, HTML, etc.). Используется для тестирования с разными данными без изменений на бэкенде.
    • Map Remote: Перенаправление запроса на другой удаленный URL.
  5. Перезапись (Rewrite)

    • Автоматическое изменение частей запроса или ответа (заголовков, тела, URL) по заданным правилам.
  6. Эмуляция скорости сети (Throttling)

    • Имитация медленных соединений (3G, EDGE) для проверки поведения приложения в плохих сетевых условиях.
  7. Повтор запросов (Repeat / Repeat Advanced)

    • Отправка одного и того же запроса несколько раз для нагрузочного тестирования или проверки идемпотентности.
  8. Запись и экспорт сессий

    • Сохранение сессии трафика в файл .chls для последующего анализа или обмена с командой.