«С запрошенной страницей была обнаружена ошибка» в jmeter даже захват переменных с помощью экстрактора регулярных выражений

#regex #jmeter #performance-testing

Вопрос:

Я использовал jmeter для записи потока входа в приложение , когда я повторно запускаю его, некоторые запросы не выполняются, поэтому я извлекаю динамические значения из предыдущих ответов и передаю эти значения последующим запросам

Я сталкиваюсь с некоторыми проблемами, в запросах есть токен состояния, но формат этого динамически меняется, поэтому из-за этого при повторном запуске некоторые запросы проходят некоторое время безрезультатно

Вот эти

Случай неудачи

 {"stateToken":"00UaBoYx2D81AIL32Nz9qmUJrIarSv3OgfUdd8FHGSkb"}
{"stateToken":"00C8O4ptx2DcSPEzHrt69zqmEGta9KbjdwywEVdkICku"}
{"stateToken":"00JgMsy7x2DzXDP0gxaeWv4dj8EguFTWtnLxVx2DBKTkIq"}
 

Рабочий случай

 {"stateToken":"00fswJVHKpW7dNhNVK0bRclBBrsuMLHBBevJ8IS1Wz"}
{"stateToken":"00ZVZXpSJn7v3lxNTrEqy1mAGydgroO5apvoTlWH2u"}
 

Мое регулярное выражение для маркера состояния захвата-это stateToken":"(. ?)"

в чем здесь проблема ?

вторая проблема-saml,состояние ретрансляции не работает, даже regax работает нормально в тестере regax , я получаю сообщение «Произошла ошибка с запрошенной страницей». в отладочном образце эти 2 переменные получают и передаются ( скриншот прилагается )

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

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

Ответ №1:

Ваши неудачные запросы tokens have x`.

Вам нужно будет закодировать значение и отправить запрос.

  1. В HTTP-запросе Проверьте поданный URL encode?
    введите описание изображения здесь
  2. Кодирование значения с помощью функции

Комментарии:

1. Я поставил галочку кодирования URL-адреса и повторно запустил его , все та же проблема

2. Не могли бы вы проверить значения в Дереве результатов просмотра —> Вкладка Запрос ? Закодируйте значение с помощью функции JMeter (UrlEncode)[ jmeter.apache.org/usermanual/functions.html#__urlencode]и сравните, сопоставимы ли значения.

3. {«stateToken»:»00JgMsy7x2DzXDP0gxaeWv4dj8EguFTWtnLxVx2DBKTkIq»} я хочу удалить «x2D» сверху ( мой регакс был» stateToken»:» (. ?)», но он не работает ) можете ли вы помочь удалить ? x2D меняется в токене, некоторое время его передняя часть, а несколько раз-более поздняя часть токена

4. необходимо установить менеджер плагинов в jmeter

Ответ №2:

Это похоже на ошибку в вашем приложении, я не думаю, что это проблема JMeter, предположительно, это связано с наличием этих x2D символов (может быть неправильная работа escape-кода unicode)

Я не знаю, чего ожидает ваше приложение, вместо этого x2D попробуйте проверить код JavaScript приложения, чтобы увидеть, что оно делает с токенами, когда вы поймете это, вы сможете воспроизвести эту логику преобразования токенов в препроцессоре JSR223 и на языке Groovy

Комментарии:

1. {«stateToken»:»00JgMsy7x2DzXDP0gxaeWv4dj8EguFTWtnLxVx2DBKTkIq»} я хочу удалить «x2D» сверху ( мой регакс был» stateToken»:» (. ?)», но он не работает ) можете ли вы помочь удалить ? x2D меняется в токене, некоторое время его передняя часть, а несколько раз-более поздняя часть токена

2. Случай сбоя 002KljInsq318mkPTkDTuJ06eLSxIQmVgax2DSuvHmDe {«stateToken»:»00UaBoYx2D81AIL32Nz9qmUJrIarSv3OgfUdd8FHGSkb»} {«stateToken»:»003LYZGSYKn3io1ocOwCBNcp2Ix2Dt8UbkdBfruaC6C0″} {«stateToken»:»00C8O4ptx2DcSPEzHrt69zqmEGta9KbjdwywEVdkICku»} {«stateToken»:»00JgMsy7x2DzXDP0gxaeWv4dj8EguFTWtnLxVx2DBKTkIq»}} {«stateToken»:»00fswJVHKpW7dNhNVK0bRclBBrsuMLHBBevJ8IS1Wz»} {«stateToken»:»00ZVZXpSJn7v3lxNTrEqy1mAGydgroO5apvoTlWH2u»}

3. не можем ли мы исключить x2D с помощью экстрактора регулярных выражений ?