Получить запрос API не работает в Jmeter со знаком "+" - PullRequest
0 голосов
/ 07 ноября 2018

Есть запрос на получение, который фильтруется через + при попытке доступа из браузера и работает.

Но при попытке сделать то же самое в случае Jmeter или почтальона это не работает.

Запрос, который работает из браузера, имеет формат ниже.

/jon/doe/foo/baar/Number+123456789

Как мне добиться того же в Jmeter?

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Если вы можете успешно выполнить запрос в браузере, вы сможете записать его, используя JMeter's HTTP (S) Test Script Recorder

  1. Подготовьте JMeter к записи. Самый простой способ сделать это - использовать JMeter Templates Feature

    • В главном меню JMeter выберите File -> Templates -> Recording и нажмите «Создать»

      enter image description here

    • Выберите HTTP (S) Test Script Recorder и нажмите «Пуск»

      enter image description here

  2. Подготовьте браузер к записи. Обратитесь к его документации относительно того, как настроить его для использования прокси. Я бы порекомендовал перейти на Mozilla Firefox , так же как и JMeter, он бесплатный и с открытым исходным кодом, более того, он имеет отдельную конфигурацию прокси, которая не является производной от операционной системы.

    • В меню выберите `Настройки -> Общие -> Сетевой прокси -> Настройки
    • Используйте localhost в качестве прокси-хоста и 8888 в качестве прокси-порта. Используйте прокси для всех протоколов без исключений, таких как

      enter image description here

  3. Выполните ваш запрос в браузере

  4. JMeter сохранит соответствующий HTTP-запрос под контроллером записи
  5. Проверка деталей запроса и ответа с использованием Просмотр дерева результатов listener
0 голосов
/ 07 ноября 2018

'+' - это специальный символ, и вам необходимо его кодировать: /jon/doe/foo/baar/Number%2B123456789

Jemeter имеет функцию для выполнения во время выполнения, документация :

__urlencode: функция для кодирования строки в application/x-www-form-urlencoded строка.

Например, строка ${__urlencode(Word "school" is "école" in french)}

возвращает Word+%22school%22+is+%22%C3%A9cole%22+in+french.

...