что не позволяет сделать charles

Помогите выбрать правильный ответ

Как называется технология, которая блокирует просмотр интернет-трафика мобильных приложений?
1) Charles Blocking
2) Sniffer Controlling
3) SSL-Pinning

Куда был помещён первый в мире зафиксированный баг?
1) Вклеен в технический дневник
2) Был утилизирован
3) Прибит в рамочке на стену

Зачем для тестирования используют консоль в браузере?
1) Для получения дополнительной информации
2) Для запуска тестов
3) Для отладки

Что НЕ позволяет сделать Charles?
1) Замедлить соединение до скорости USB-модема
2) Автоматически отредактировать заголовок POST-запроса
3) Просмотреть адреса всех IP узлов, которые встречаются на пути пакета

Что такое std?
1) Один из методов тестирования
2) Cтандартное пространство имён языка С++
3) Функция языка С++

Что из перечисленного является инструментом для автоматизации действий веб-браузера?
1) Seweb
2) Tux
3) Selenium

Какое тестирование, как правило, является завершающим?
1) Приёмочное пользовательское
2) Модульное
3) Тестирование локализации

2) Sniffer Controlling (По русски контроль перехвата трафика.)

1) Вклеен в технический дневник (Это был мотылек застрявший между контактами реле.)

1) Для получения дополнительной информации
3) Для отладки

1) Замедлить соединение до скорости USB-модема (Как и другие прокси сервера.)

2) Cтандартное пространство имён языка С++ (В рамках стандартной библиотеки)

3) Selenium (Язык JavaScript)

1) Приёмочное пользовательское

Источник

Charles: незаменимый тул в арсенале QA-инженера

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles
Для тестирования мобильных приложений, работающих с удаленными серверами, QA-инженеру приходится держать под рукой множество разных тестовых аккаунтов, логов, запросов и ответов. Реальность такова, что не всегда удается договориться о предоставлении нужных тестовых данных в срок. Чаще всего серверные разработчики будут незнакомыми вам людьми по ту сторону Скайпа. В таких ситуациях приходится своими руками подменять ответ сервера перед его передачей в приложение.

Чтобы редактировать выдачу сервера и воспроизводить сложные тестовые сценарии в QA Redmadrobot, мы используем Charles.

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

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

1. Качаем и устанавливаем.
2. При первом запуске Charles заботливо предложит автоматически настроить параметры сети — соглашаемся.
3. Переходим в Proxy > Proxy Settings и выставляем порт 8888, если он уже не прописан.
4. На телефоне заходим в настройки Wi-Fi и прописываем в прокси сервер IP-адрес вашего Mac и порт 8888.
Телефон должен быть подключен к той же Wi-Fi сети, что и ваш Mac.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Готово. При следующем соединении клиент Charles попросить разрешение подключить ваш телефон. После этого в Charles начинают отображаться все HTTP-запросы и ответы, которые проходят через ваш телефон.

Для мониторинга HTTPS-трафика нужно пройти дополнительные шаги:
5. Переходим в браузер телефона и заходим на www.charlesproxy.com/getssl для установки сертификата SSL, который будет использоваться при подключении. Устанавливаем.
6. В списке хостов выбираем желаемый хост с HTTPS и ставим галочку Enable SSL Proxying.
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Готово. Теперь в клиенте Charles отображается HTTPS-трафик по выбранному хосту.

Важно
Если ваше приложение использует SSL pinning, то Charles не сможет перехватывать запросы и ответы.

Мониторинг трафика


Для наглядной демонстрации работы с API используем приложение Хабрахабр для Android. На iPhone стоит защита от программ типа Charles, но на Android её нет.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Charles выстраивает все запросы в порядке их отправки на сервер. Запросы и ответы можно просматривать как в отформатированном, так и в «сыром» виде. В QA Redmadrobot во время тестирования телефон всегда подключен к Charles. Таким образом остается возможность посмотреть историю запросов и отследить хитрые баги.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Подмена данных


Как видите, у меня не так много кармы. Charles поможет сделать вид, что её чуть больше, чем есть на самом деле.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Выдача по аккаунту выглядит так (только JSON-строка, без header’ов):

В логе есть поле score:
По всей видимости, как раз то, что мне нужно.

Rewrite settings

Для подмены серверных данных открываем Tools > Rewrite.
В списке слева отображаются сеты из запросов, которые можно составлять на свой вкус. После создания сета идет выставление location. Здесь мы прописываем URL запроса с query параметрами (по желанию).

Следующий шаг — создать правило подмены. К сожалению, Charles не умеет подменять информацию по ключу. Нужно вручную прописывать ключ и значение, а затем писать то, что мы ходим увидеть.

Окно создания правила будет выглядеть следующим образом:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Сам экран подмены будет выглядеть приблизительно так:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Следующий ответ по запросу информации о себе будет иметь отредактированные данные, score = 5000:

При следующем переходе на экран профиля в приложении Хабра мы увидим плод своих трудов.
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Хочу еще раз напомнить, что информация на сервере остается прежней. Данные изменяются во время путешествия к МП и эти изменения никак не затрагивают реальные данные профиля.

Таким же образом можно подменять не только ответы, но и запросы. Для этого на экране Rewrite rule нужно поставить галочку в поле Request, а не Response.

Breakpoints

При подмене запросов с помощью Rewrite settings в Charles невозможно редактировать кириллицу. При изменении любой информации на кириллицу ваши логи будут состоять из множества вопросительных знаков.

К счастью, этот недостаток можно обойти с помощью другой функции Charles — breakpoints. Идея похожая, но только ответы останавливаются прямо перед передачей в МП, и их можно редактировать своими руками в реальном времени.

Открываем Breakpoints settings и прописываем URL запроса.
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

При следующем ответе по этому запросу Charles перехватит всю выдачу и позволит нам с ней работать. Следует держать в голове, что МП может выкинуть ошибку по тайм-ауту, и текущий запрос уйдет в никуда.
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Заменим мой логин на что-нибудь, написанное на кириллице.
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Вот и все. Приложение отображает нужную нам информацию и проблем с кириллицей не возникает.
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Самое главное

Источник

Погружение в удивительный мир Charles для чайников

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

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

Charles работает и на мобильных устройствах, но в этой статье мы будем рассматривать только версию для Windows. Давайте же начнем!

Установка Charles

Начать следует, конечно же, с установки. Скачиваем программу с официального сайта разработчика.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Программа платная, но есть тестовый период на 30 дней. Даже без покупки программой можно спокойно пользоваться, но время одной сессии будет ограничено 30 минутами, а также частенько на 5-10 секунд будет появляться оверлей.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

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

После скачивания следует запустить exe-файл и произвести инсталляцию. Здесь ничего сложного нет, просто оставьте стандартные настройки установки.

Настройка программы

После установки программу следует настроить. Многие пользователи Charles забывают об этом этапе, а затем кусают локти, пытаясь понять, почему у них ничего не работает. На самом деле настройка программы очень простая, сейчас все покажу!

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

Инструкция по установке сертификата:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Жмем «Установить сертификат».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Здесь выбираем «Локальный компьютер» и жмем «Далее».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

ВАЖНО! На этом этапе выбираем «Поместить все сертификаты в следующее хранилище», жмем «Обзор», затем ОБЯЗАТЕЛЬНО выбираем «Доверенные корневые центры сертификации».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charlesЖмем «Далее».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Установку сертификата мы выполнили, теперь нам необходимо включить SSL Proxying и настроить его фильтрацию, чтобы начать перехватывать запросы. Фильтрация определяет, какие именно запросы нужно ловить, но мы сделаем так, чтобы у нас перехватывались все запросы.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Ставим галочку на «Enable SSL Proxying», затем под полем «Include» жмем на кнопку «Add».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Программа настроена. Теперь рассмотрим ее возможности и функции.

Compose

Данная функция позволяет нам отправить копию выбранного запроса с измененными параметрами.

Нам достаточно выбрать один конкретный запрос и с помощью функции Compose поменять его параметры (заголовок запроса, тело запроса, куки, код и пр.)
Для начала мы можем отделить конкретные запросы от остальных с помощью функции Focus :

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

У нас создается копия запроса, в которой мы можем менять все, что нам нужно: тело, шапку, тип запроса, версию HTTP и т.д.

Например, можно подменять некоторые значения в коде, чтобы проверить валидацию на бэкенде. Допустим, поле принимает только числовое значение. Мы используем Compose, передавая в значение поле уже буквы. Если запрос пройдет без ошибок, то это значит, что валидация отсутствует.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

После изменения нужных нам параметров жмем « Execute » и получаем копию запроса с ответом от сервера.

Breakpoint

Данная функция позволяет точнее работать с запросами, вешая на них так называемый «Breakpoint» (точку остановки).

Ниже показано, как через настройки добавить запрос в список Breakpoint. После повторного получения указанного вами запроса в программе откроется отдельная сессия, в которой вы сможете спокойно работать с ним.

Отмечу, что эта функция, по сути, делает автоматический Compose. Вы так же можете менять значения, но вам не придется каждый раз выбирать конкретный запрос.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Ставим галочку на «Enable Breakpoints», затем жмем «Add».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Заполняем все поля в открывшемся окне (выше пример заполнения).

При повторном получении запроса с такими же данными у вас будет открываться новое окошко, в котором вы сможете работать с пойманным запросом. Удобно!

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Rewrite

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Rewrite» src=»https://timeweb.com/media/image9.png» title=»» />

Ставим галочку на «Enable Rewrite», затем в открывшемся окне под левым полем жмем «Add», а дальше жмем «Add» уже под правым верхним полем.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Заполняем все поля (они идентичны тем, что заполняются при создании Breakpoint).

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Затем жмем «Add» уже под правым нижним полем, указываем тип редактирования запроса, заменяемые значения, а также условия замены.

Давайте поймаем запрос и посмотрим на реакцию Charles!

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Charles поймал нужный запрос, а затем заменил все Header одним значением.

Repeat Advanced

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

Ниже подробно показано, как это сделать.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Здесь настраиваем все в соответствии с указаниями на приложенной выше картинке.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Должно открыться новое окно, где отправляются запросы.

Map Local

Последняя функция в сегодняшней статье. Позволяет работать с локальными файлами.

Демонстрация инструмента ниже.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

При повторном получении того же запроса Charles будет перенаправлять его на локальный файл.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Надеюсь, эта статья помогла вам разобраться в основах Charles. Это действительно мощный и довольно простой инструмент для тестирования. Спасибо за внимание!

Источник

Charles – Инструкция для чайников

Скачать Charles можно на официальном сайте: www.charlesproxy.com

Продукт условно бесплатный (trial на 30 дней), но нам этого будет вполне достаточно.

Для проведения тестов Вам понадобится:
1) LAN-кабель с вселенным в него интернетом.
2) Ноутбук с возможностью подключения в него того самого LAN-кабеля и wi-fi передатчиком.
3) Реальное Android-устройство с установленным на него мобильным приложением, которое нужно тестировать.

Итак, отключаем ноутбук от всех возможных Wi-fi сетей и подсоединяем к нему LAN-кабель со священным Интернетом. Далее нам необходимо раздать wi-fi с помощью самого ноутбука.
Для этого нужно вызвать командную строку (обязательно — запуск от имени Администратора) и ввести следующие две команды:

(или просто скопировать данный текст в Блокнот, сохранить как *.bat-файл и каждый раз запускать его от имени Администратора).

Wi-fi точка доступа создана. подключаемся к ней своим Android-устройством, имя сети (как Вы догадались, наверное) «WIFI», а пароль – 12345678.

Возможен вариант, что у вас не будет доступа к Интернету на самом устройстве. В таком случае необходимо открыть общий доступ к сети. Как это сделать можно без проблем найти и самому, но раз уж я пишу эту статью, то оставлю полезную ссылку прямо здесь с инструкцией по устранению данной проблемы:

После этого, как показала практика, Интернет на устройстве все-таки появился.

Далее необходимо узнать 2 волшебных цифры:

1) Ваш IP-адрес
2) Номер порта, который использует Charles для прокси.

Первую узнаем здесь же, в командной строке, набрав команду ipconfig.
Из всей чепухи которую Вам выдаст cmd.exe нас интересует только cвойства «Ethernet adapter Подключение по локальной сети», а именно IPv4-адрес.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Запоминаем (записываем) его и идем далее.
Номер порта, который использует Charles можно узнать внутри самой программы. Для этого в главном окне программы выберите пункт меню Proxy, в выпадающем списке – Proxy settings. Перед Вами откроется нечто подобное:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Как вы поняли эти заветные 8888 и есть наше второе число. Теперь необходимо задать ограничение скорости соединения. Для этого пройдем в пункт меню Proxy → Throttle Settings.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Ставим галочку Enable Throttling. Only for selected hosts – можно убрать (если не тестируете зависимость работы приложения от какого-либо конкретного домена).

Самый главный параметр – Bandwidth – пропускная способность нашего соединения – устанавливаем на необходимый Вам уровень (я тестировал очень медленное соединение, поэтому поставил 3kb/s ). Также, включите запись (Start/Stop Recording) нажав на панели главного окна на соответвующую кнопку что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charlesдля начала записи.

Осталось только настроить наше устройство. Для этого зайдите в настройки, раздел Wi-fi. Заходим в свойства сети, которую раздаем с ноутбука (и к которой уже подключено устройство) выбираем «Настройка прокси» и вводим два волшебных числа в соответствующие поля.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Все готово! Возвращаемся обратно в Charles и во вкладке Sequence видим дивную картину:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Это и есть все запросы, которое делает наше приложение (для образца взял мобильную версию ВК), с подробной информацией по каждому запросу.

P.S: На написание данной статьи меня подтолкнуло несколько вещей:
— отсутствие полного и доступного описания в русскоязычной части интернета.
— англоязычное население YouTube во всех роликах предлагало тестировать Charles на эмуляторах, а для моего старенького ноутбука это смерти подобно.

Надеюсь, данная статья будет полезной. Удачи всем в тестировании и поменьше багов!

Источник

Как приручить Charles Proxy?

Привет! Многие из тех, кто приходит к нам на собеседование на должность тестировщика, с гордостью заверяют, что они могут пользоваться Charles Proxy. Но когда погружаешься в техническую часть, то становится очевидно, что кандидат только слышал об этом инструменте. Давайте уже наконец скорее приручим эту вазу!

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Википедия нам сообщает, что:

Charles представляет собой кроссплатформенное приложение прокси-сервера для отладки HTTP, написанное на Java. Он позволяет пользователю просматривать HTTP, HTTPS и активированный трафик TCP-порта, доступ к которому осуществляется с локального компьютера, на него или через него. Сюда входят запросы и ответы, включая HTTP-заголовки и метаданные (например, файлы cookie, кэширование и кодирование информации), с функциями, предназначенными для помощи разработчикам и тестировщикам в анализе соединений и обмене сообщениями.

Небольшое пояснение

Сниффинг — процесс мониторинга и перехвата всех пакетов, проходящих через сеть, с помощью инструментов сниффинга (Charles Proxy).

Первые шаги

1. Установка и запуск

Для начала необходимо загрузить и установить приложение.

Если у вас не приобретена лицензия, то будет доступна 30-ти дневная пробная версия с ограничениями (функциональность не блокируется, но будут появляться окна с таймаутом 5-10 секунд до возобновления использования, а также через 30 минут будет завершаться работа приложения).

2. Начинаем сниффить трафик

Запустите Charles Proxy на MAC, зайдите в меню HelpSSL ProxyingInstall Charles Root CertificateУстановить сертификатИмпортируем сертификат.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Запустите Charles Proxy на Windows, зайдите в меню HelpSSL ProxyingInstall Charles Root Certificate

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

В Windows, в открывшемся окне СертификатУстановить сертификат. Выбрать «Текущий пользователь» или «Локальный пользователь». Далее вы получите уведомление от мастера импорта сертификатов, что сертификат успешно импортирован.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3. Проксирование трафика веб-браузера

Рассмотрим вариант с проксированием на примере браузера Mozilla Firefox. И установку сертификата на примере двух OS: MAC и Windows.

3.1 Windows
Для этого узнаем IP-адрес ПК: в Charles Proxy перейдем в HelpLocal IP Address. Видим, что ваш IP: 10.0.2.15 (p.s. в Local IP Address может быть несколько указано IP, например отображаться IP от VirtualBox, если после указания одного IP не будут отображаться запросы, попробуйте выбрать другой из списка).

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Далее откроем Mozilla Firefox, перейдем в Параметры сетиНастроить. Выставим все как на скриншоте ниже и нажмем Ок.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Теперь необходимо перейти по ссылке chls.pro/ssl, а далее начнется автоматическая загрузка сертификата. В этот момент будет входящее соединение в Charles Proxy, необходимо нажать Allow, а также выполнить импорт сертификата:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Далее откроем Mozilla Firefox, перейдем в Параметры сетиНастроить.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Выставим все как на скриншоте и нажмем Ок.

Теперь необходимо перейти по ссылке chls.pro/ssl, а далее начнется автоматическая загрузка сертификата.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

В этот момент будет входящее соединение, необходимо нажать Allow:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Следующим шагом обратите внимание на диалоговое окно, где необходимо выбрать Открыть в keychain:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Важным шагом, который вы должны сделать далее, это в Keychain Access сделать сертификат доверенным:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles
что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles
Не забудьте деактивировать Windows Proxy (если у вас ОС Windows) или Mac Proxy (в противном случае будет вам мешать).

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Теперь у вас отображаются запросы, однако они зашифрованы, и кроме иероглифов ничего не видно. Чтобы видеть Request/Response в нормальном виде, нужно включить SSL Proxying и настроить домены, пакеты которых мы хотим перехватывать. А хотим мы получать запросы со всех сайтов. Для этого перейдите в раздел ProxySSL Proxying Settings.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

В открывшемся диалоговом окне поставьте галочку Enable SSL Proxying, выберите раздел Include и нажмите Add.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Далее заполните поле Host значением * (как показано на скриншоте) и нажмите ОК.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

В диалоговом окне «SSL Proxying Settings» нажмите ОК.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Если необходим будет определенный host, следует указать например нужный *youla* (это значит, что будет расшифровываться трафик только тот, где в запросах есть youla.

4. Настройка прокси на Android

Чтобы отображались запросы приложения Android, у вас должна стоять соответствующая сборка Android-приложения, c установленным в манифесте разрешением. Давайте представим, что такое приложение имеется, и мы хотим начать получать его трафик. Важно: устройство Android и десктоп должны быть в одной сети.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Далее возьмите в руки телефон, откройте Свойства сети → Название сети WiFi → Прокси-сервер → Вручную → Имя хоста: *ваш IP* / Порт: *8888* → Сохраните измененные свойства сети.

Теперь необходимо перейти по ссылке chls.pro/ssl или charlesproxy.com/getssl, а далее начнется автоматическая загрузка сертификата. Откройте его, задайте имя сертификата, и теперь у вас есть доступ к трафику Android-приложения.

5. Настройка прокси на iOS

Возьмите в руки iPhone, откройте Свойства сети → Название сети WiFi → Прокси-сервер → Вручную → Имя хоста: *Наш IP* / Порт: *8888* → Сохраните измененные свойства сети (важно: устройство iOS и десктоп должны быть в одной сети).

Теперь необходимо перейти по ссылке chls.pro/ssl или charlesproxy.com/getssl, «Разрешить» загрузку профиля конфигурации. Далее перейдите в НастройкиПрофиль загруженУстановить. Затем перейдите в НастройкиОсновныеОб этом устройствеДоверие сертификатам → найдите установленный сертификат и сделайте его «Доверенным».

Функциональность Charles Proxy

1. Подмена данных

Представим, что нам надо протестировать на клиенте верстку. Нужно проверить, как будет отображаться большое количество бонусов у пользователя. Один из вариантов, который многие предложат: изменить в БД количество бонусов и проверить на клиенте. Да, вы будете правы! Однако на сервере может быть кэш, и необходимо подождать какое-то время, пока количество бонусов не обновится, либо просто подключиться к самой базе и выполнить запрос — это занимает определенное время. Есть вариант проще: изменить ответ от сервера! В Charles Proxy есть три способа подмены данных:

1.1 Breakpoint

Breakpoint — это некая точка остановки запроса. Когда обнаруживается запрос из заданного списка, для дальнейшего ручного взаимодействия с параметрами запроса открывается отдельное окно. В нём перейдите к ручному изменению запросов и ответов. Удобно использовать эту функцию, когда тестируете API или разные ответы сервера.

У нас имеется приложение и профиль пользователя, у которого сейчас 45 бонусов на счету:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Запрос, в котором приходит это количество бонусов: https://api.youla.io/api/v1/user/5e6222bbbedcc5975d2375f8

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Чтобы «повесить» Breakpoint на запрос, перейдите в раздел ProxyBreakpoint Settings. Далее поставьте галочку Enable BreakpointsAdd, и в открывшемся диалоговом окне «Edit Breakpoint» вставьте URL запроса, как показано на скриншоте:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Для примера поставьте две галочки «Request» и «Response». Далее нажмите OK, и ещё раз OK в окне «Breakpoint Settings». Теперь выполните запрос еще раз, то есть на клиенте заново откроется экран с профилем пользователя.

В Charles Proxy мы видим, что выполнение запроса ставится на паузу:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

На клиенте отобразится новое количество бонусов. Мы богаты!

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

1.2 Rewrite

Rewrite — это инструмент, позволяющий создавать правила, которые изменяют запросы и ответы, когда те проходят через Charles Proxy. Например, можно добавлять и изменять заголовок, искать и заменять текст в теле ответа или запроса, и т.д.

Попробуем с помощью Rewrite изменить количество бонусов нашего пользователя. Для этого откройте ToolsRewrite → галочка «Enable Rewrite« → Add. В поле Name можно ввести любое название подмены, например, «Change bonus», либо оставить по умолчанию «Untitled Set».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Следующим шагом необходимо добавить в «Location» путь запроса. Для этого, в разделе LocationAdd заполните следующие поля и сохраните:

Host: https://api.youla.io

Path: /api/v1/user/5e6222bbbedcc5975d2375f8

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

После того, как вы добавили путь запроса, необходимо изменить сам параметр и его значение. Для этого нужно создать Rewrite Rule:

Type: Body (потому что параметр находится в теле);

Where: Response (потому что параметр находится в ответе от сервера);

Раздел Match: в «Value» укажите значение и параметр, который возвращает сервер;

Раздел Replace: в «Value» укажите значение и параметр, который вы хотите увидеть на клиенте.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Далее сохраните «Rewrite Rule» и нажмите ОК на вкладке «Rewrite Settings». На клиенте перезапросите еще раз профиль пользователя. У вас автоматически подменилось количество бонусов пользователя. Мы снова богаты!

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

1.3 Map Local

Map Local — инструмент, который позволяет использовать локальные файлы, словно они являются частью сервера.

Перейдите в Tools → Map Local.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Далее в окошке «Map Local Settings» нажмите Add → Хост: https://api.youla.io/api/v1/user/5e6222bbbedcc5975d2375f8 → Local path: путь на компьютере до файла. Можете использовать готовые медиа-файлы, HTML, CSS, JSON, XML. Больше подходит, конечно, разработчикам, чтобы не загружать данные на сервер для его последующего тестирования, но и тестировщик может найти грамотное применение. Мы заранее подготовили ответ, который нам будет нужен, и сохранили в файл change_bonus.json:

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Сохраните введенные значения на вкладке «Edit Mapping» и на вкладке «Map Local Settings».

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

На клиенте перезапросите еще раз профиль пользователя. У вас автоматически подменилось количество бонусов пользователя. Мы снова богаты!

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Давайте рассмотрим другие возможности инструмента Charles Proxy. И начнем с самого начала, с вкладки «Proxy».

2.1 Throttle Settings

Throttle Settings — функция, позволяющая задавать разные параметры скорости соединения с выбранным доменом.

Функция для тех, кто любит тестировать в лифте, в метро, в подземном переходе. Перейдем в ProxyThrottle Settings → галочка Enable Throttling. Если не разбираетесь во всех перечисленных пунктах, то можете использовать Throttle preset и там выбрать подходящую для теста скорость, а система автоматически заполнит остальные поля.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Если выбрать «Only for selected hosts», то можно задать определенный хост, к которому будут применяться ваши настройки. Здесь можно использовать готовые пресеты с настройками для различных типов (4G, 3G и т. д.). А также можно задать различные параметры, коротко перечислю некоторые из них:

Bandwidth — максимальный объем данных, который может быть передан с течением времени.

Utilisation — доля общей пропускной способности, которая может быть предоставлена пользователю в любой момент времени.

Latency — задержка в миллисекундах по запросу firts между клиентом и удаленным сервером.

MTU — максимальное передающее устройство для текущего пресета.

Reliability — мера вероятности, что соединение не удастся. Используется для имитации ненадежных сетевых условий.

Stability — мера вероятности, что соединение будет нестабильным и, следовательно, снизится качество. Полезно для моделирования сетей, в которых периодических падает качество связи, например, мобильных.

2.2 Reverse Proxies

Reverse proxy — обратный прокси-сервер. Обычно используется для того, чтобы принимать запросы из Интернета и перенаправлять их на один из веб-серверов.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

2.3 Port Forwarding

Port Forwarding — проброс портов, который иногда называют перенаправлением портов, или туннелированием — процесс пересылки трафика, адресованного конкретному сетевому порту, с одного сетевого узла на другой. Этот метод позволяет внешнему пользователю достичь порта внутри локальной сети.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

2.4 MacOS Proxy/Windows Proxy

MacOS Proxy или Windows Proxy (в зависимости от вашей ОС) — проксирование трафика с вашего веб-браузера.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Разобравшись с разделом Proxy, перейдем к разделу Tools.

3.1 No Caching

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3.2 Block Cookies

Block Cookies — заголовок файла Cookie удаляется из запросов, предотвращая отправку значений файла из клиентского приложения (например веб-браузер) на удаленный сервер. А также из ответов удаляется заголовок Set-Cookie, предотвращая получение клиентским приложением запросов на установку файлов cookie с удаленного сервера. В настройках можно включить удаление Cookie как для всех хостов, так и для выбранных. В примере ниже включено удаление Cookie для всех запросов.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3.3 Map Remote

Map Remote — позволяет переадресовать запросы с одного URL «Map From» на другой «Map To». Подменяет хост, путь целиком или только параметры в зависимости от вашей задачи. В примере ниже подменён запрос с prod-сервера на dev-сервер.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3.4 Block List

Block List — позволяет блокировать определённые доменные имена. Когда веб-браузер попытается запросить любую страницу из заблокированного доменного имени, она заблокируется. Можно выбрать либо «Drop connection», либо возврат 403 ошибки.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3.5 DNS Spoofing

Виртуальный хостинг — это когда у вас есть несколько сайтов на одном IP-адресе, и веб-сервер определяет, какой сайт вы запрашиваете, основываясь на имени, введённом в браузере. Точнее, сервер смотрит на заголовок хоста, отправленный в запросе. Например, когда нужно подменить хосты, чтобы при вводе какого-либо адреса в браузере (скажем, api.youla.ru) запросы уходили по другому адресу (допустим, на тестовую площадку).

DNS Spoofing — перенаправляет доменное имя на определенный IP-адрес.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3.6 Mirror

Mirror — эта функция позволяет автоматически сохранять все ответы, возвращаемые в Charles Proxy. Они раскладываются локально в такой же иерархии, как на сервере. Если внезапно случился даунтайм на бэкенде, отвалилась тестовая среда и т. д., у вас уже есть готовые моки для Map Local. Активировать функцию можно так: ToolsMirror или ToolsAuto Save.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

3.7 Compose

Compose — функция редактирования запросов, которые вы поймали.

Например вы добавляете в избранное какой-то товар, но почему-то он не добавляется. Вы можете отредактировать уже отправленный запрос и отправить его еще раз. Для этого необходимо выбрать нужный запрос из списка, нажать на нём правой кнопкой и выбрать Compose. Иконка у запроса поменяется, и теперь можно смело его редактировать.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

После того, как вы изменили нужные значения в запросе, нажмите внизу «Execute», чтобы отправить запрос на сервер.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

4. Recording Settings

Recording Settings — настройки отображения списков разрешенных и запрещенных доменов.

Во вкладке «Options» можно настроить лимит, то есть количество запросов, которое Charles Proxy может записать.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Во вкладке «Include» можно выбрать конкретный домен для отображения пакетов.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

Во вкладке «Exclude» можем выбрать те домены, которые необходимо спрятать при сниффинге.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

5. Focus

Focus — эта функция перемещает домен на первые позиции в списке.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

6. Repeat

Repeat — отправляет на сервер запрос, идентичный выбранному.

что не позволяет сделать charles. Смотреть фото что не позволяет сделать charles. Смотреть картинку что не позволяет сделать charles. Картинка про что не позволяет сделать charles. Фото что не позволяет сделать charles

7. Repeat Advanced

Repeat Advanced — идентично Repeat, только можно выбрать количество отправляемых запросов и задержку между ними. Эта функция пригодится при проверке реакции сервера на флуд.

Здесь Concurrency — количество пользователей, а Iterations — количество повторений каждого запроса. Также можно поставить галочку «Show results in new Session», в таком случае откроется новое окно, где будут выполняться запросы.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *