Привет, Хабр!

Хочу поделиться интересным приложением, которое значительно упрощает процесс веб-тестирования.

В роли QA-инженера, активно тестирующего веб, я часто сталкиваюсь с необходимостью изменения запросов/ответов API, статус кода ответа и других параметров. Иногда возникают ситуации, когда фронт готов, но доработки с бэка еще предстоит дождаться.

Тут на помощь приходит Requestly! 

Этот инструмент предоставляет обширный набор возможностей, и сейчас я бы хотела выделить те, которые сделают его действительно удобным для тестировщика.
Ссылка для установки

Подмена кода ответа

Иногда необходимо проверить, как веб будет реагировать на различные ошибки. Если четыр��хсотые можно легко воспроизвести, то вот на моменте воспроизведения 500-х появляются трудности.

Как сделать подмену статус кода ответа:

  1. Перейдите в раздел HTTP Rules

  2. Нажмите на создание нового правила, выберите Modify API response

  3. Выберете REST API

  4. Вставьте нужный URL и  установите статус код

  5. Сохраните правило

  6. Перейдите на нужную страницу — и вот результат!

Изменение тела ответа.

Это важный инструмент в следующих случаях:

  • Необходимо начать тестирование фронта, но бэк еще не готов.

  • Нет доступа(или он ограничен) к базе данных, но требуется модифицировать данные для тестирования.

Как сделать подмену ответа:

  1. Повторяем все вышеописанные шаги до 3

  2. Вставляем и изменяем ответ (уделяя внимание скобкам, и при необходимости используем Pretty Print для улучшения читаемости)

  3. Сохраните правило

  4. Перейдите на нужную страницу в вебе

    Вуаля — можем тестировать!

Важно помнить: после завершения тестирования нужно отключать правила.

Запись сеансов - удобная фича в Requestly.
С ее помощью вы можете сохранить сеанс, включая запись экрана, console logs, network logs и данные об окружении. Эти записи можно легко интегрировать в баг-репорт (сохранив сессию в виде файла или ссылки), что значительно ускоряет процесс фикса.

Как записать сеанс:

  1. Переходим в Session

  2. Вставляем нужный URL 

  3. Нажимаем Start Recording

Для окончания записи сессии достаточно нажать на Stop recording.

Дополнительные возможности Requestly, которые стоит упомянуть:

Map Remote.

Функция Map Remote позволяет перенаправлять сетевые запросы с одного URL-адреса на другой. Это особенно удобно, когда требуется изменить источник данных или подключить альтернативный сервер.

Delay Network Requests.

С помощью Requestly можно протестировать производительность веб-сайта в различных сетевых условиях и с разными задержками API. Эта функция позволяет вам смоделировать разные условия сети.

Mock Server.

В ситуации, когда API еще не разработаны, но фронт уже готов, или когда один из сервисов не отвечает, можно воспользоваться Mock Server. Этот инструмент создает среду, в которой можно эмулировать работу API.

Немного по безопасности

Requestly обеспечивает локальное хранение данных, гарантируя полную безопасность. Никакие сведения о сеансе не сохраняются на сервере, если они не были явно загружены в Интернет. Важно отметить, что Requestly не захватывает конфиденциальную информацию. Расширение не записывает заголовки запросов в сетевых журналах, где могут содержаться конфиденциальные данные, такие как токены авторизации, идентификаторы аутентификации, идентификаторы сеанса, ресурсов, файлы cookie и так далее.

Почему же выбор пал в пользу Requestly вместо Fiddler или Charles Proxy?

  • Простота использования: Requestly предоставляет легкий и интуитивно понятный интерфейс.

  • Удобный дизайн: Requestly удобен в использовании различных функций.

  • Запись сессий: Возможность записи сеансов и сразу console logs и network logs  удобная функция, которой нет в других инструментах. 

Таким образом, выбор в пользу Requestly обусловлен сочетанием простоты использования, удобного дизайна и функциональности.