Как легко сделать подмену данных на вебе?

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

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

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

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

244c8ae9c5df9c0735c38c6e1fd7ae7d.png

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

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

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

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

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

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

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

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

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

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

53c83224f7f5a3dd6c60028d43475b04.png

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

c3584ef51018079e591387c44dfc9be1.png

Дополнительные возможности 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 обусловлен сочетанием простоты использования, удобного дизайна и функциональности. 

© Habrahabr.ru