JMeter: Как записывать трафик HTTPS?

Я использую Apache JMeter 2.3, который теперь поддерживает "попытку подмены HTTPS" под элементом Proxy Server.

Я пробовал это на нескольких разных серверах и не имел успеха. Кто-нибудь смог успешно записать из источника HTTPS этот параметр?

Или если вы не можете успешно записывать, может ли кто-нибудь поделиться общими? Когда это доступно, я просто отключил HTTPS на уровне сервера, но это не всегда возможно. Мысли?

Ответ 1

В то время как прокси-сервер JMeter уже имеет возможность записывать HTTPS-запросы, недавно появилось расширение Chrome, которое создает JMeter script: https://chrome.google.com/webstore/detail/blazemeter-the-load-testi/mbopgmdnpcbohhpnfglgohlbhfongabi?hl=en

Он использует BlazeMeter в качестве посредника (коммерческий JMeter в облачном сервисе), но вы можете использовать их бесплатный сервис навсегда и по-прежнему использовать плагин для записи JMX script и загружать его локально на свою собственную машину, даже если вы никогда не используйте какие-либо платные планы.

Ответ 2

Относительно вашего вопроса: "Как вы импортируете BadBoy script в JMeter?" см. документацию Badboy по адресу http://www.badboysoftware.biz/docs/jmeter.htm

Ответ 3

Что я делаю:

  • Перейдите на мой сайт, используя мой IP-адрес веб-сервера (т.е. http://2.2.2.2/login.html)
  • Запустите рекордер и запустите тестовый файл
  • Остановить запись
  • Замените все значения IP-адреса доменным именем (т.е. замените 2.2.2.2 на yoursite.com) из пробоотбора HTTP-запросов
  • Установите протокол https в пробоотборах HTTP-запросов

Если у вас более нескольких страниц, проще всего создать элемент HTTP-запроса по умолчанию и указать там свое доменное имя и протокол.

FYI, я использую последнюю стабильную сборку с 2010-05-24: Jmeter 2.3.4 r785646.

Ответ 5

  1. Начиная с JMeter 3.0 по умолчанию для HTTP (S) Test Script Recorder составляет 8888

  2. Самый простой способ настройки записи - использовать функцию JMeter Templates. В главном меню JMeter выберите:

    File -> Templates -> Recording -> Create
    

Recording Template

  1. Не забудьте запустить рекордер:

    • В JMeter <4.0 развернуть "Workbench", если> = 4.0, игнорировать этот шаг
    • Выберите "Тестер сценариев тестирования HTTP (S)"
    • Нажмите кнопку "Пуск"

Start Recorder

  1. Вы увидите сообщение о Root CA Certificate. Нажмите ОК:

Ok for message

  • это нормально, он сообщает вам, что JMeter создал корневой центр сертификации, который вам нужно импортировать в свой браузер, чтобы иметь возможность правильно записывать трафик HTTPS.

    Start proxy

    1. Чтобы импортировать этот корневой сертификат CA в Firefox (он находится в папке jmeter/bin), например:

Step 1

Step 2

Step 3

Step 4

Step 5

  1. Настройте браузер для использования JMeter в качестве прокси:

Configure JMeter as proxy in Browser

Сейчас хорошо.

  • Вы можете перейти к вашему приложению, пробоотборники будут созданы в разделе " Контроллер записи ", который находится под элементом "Группа темы"

Ответ 6

Запись в HTTPS без spoofing была добавлена ​​в JMeter (см. этот отчет об ошибке). Он работает для меня с JMeter r922204, исправляя проблему, с которой я столкнулся, когда я не мог войти в приложение во время записи с использованием подмены HTTPS. Я счастливый турист!

Ответ 7

Есть ли другой способ записи HTTPS, чем Bad Boy и Https spoofing?

Да - используйте ночную сборку JMeter, например. версия r922204.

Ответ 8

Запись Https успешно работает в новой версии Jmeter 2.9 на сегодняшний день. Мне пришлось импортировать прокси-сертификат и играть с Firefox, чтобы это работало.

Для получения дополнительной информации см. эту ссылку Запись Https с использованием Jmeter

Ответ 9

Успешная работа:  используйте BadBoy для записи в HTTPS. Он имеет встроенную функцию "экспорт в JMeter" - очень гладкий.

Ответ 10

Я успешно записал https с версией 2.3.4

Ответ 11

Да, я использовал его с "попыткой подмены HTTPS". Все достаточно просто:

  • Включите подмену HTTPS (конечно).
  • Убедитесь, что браузер отправляет запрос Http в Jmeter, так что Jmeter может записать его, а затем отправить зашифрованный запрос обратно на сервер. Итак, URL-адрес в браузере должен начинаться с http://(а не с https://). Подробности можно найти в в моем блоге.

Пожалуйста, дайте мне знать, если это сработает для вас.

Ответ 12

Я использую Webscarab для записи https и ajax-цепочек. Это хорошо. Я расширил Webscarab с помощью функции экспорта для Jmeter. Bugzilla 48898.