JMeter перестает отправлять cookie JSESSIONID при переключении на SSL

У меня есть план тестирования, который отлично работает под http, и диспетчер файлов cookie правильно поддерживает мои сеансы. Он также может разговаривать с тем же сервером при переключении на ssl и даже думает, что все работает правильно, потому что он получает ответ 200 с нашим настраиваемым сообщением о том, что он не вошел в систему.

Все, что мне нужно сделать, чтобы воспроизвести поведение, - это переключиться с http на https. Тест по-прежнему может взаимодействовать с сервером, но я вижу в журнале «Просмотр результатов в таблице», что файлы cookie имеют JSESSIONID под http и пусты под https. И на каждый запрос по ssl отвечает Set-Cookie для JSESSIONID.


person Brian Deacon    schedule 23.02.2011    source источник


Ответы (1)


Интересный сценарий. Предлагает ли файл журнала Jmeter какие-либо подсказки?

Может быть, Jmeter нужна копия сертификата для правильного хранения файла cookie SSL? На консоли будет отображаться проблема с подтверждением связи, которую можно решить, добавив сертификат в хранилище ключей: http://www.java-samples.com/showtutorial.php?tutorialid=210

Возможно, вы сможете выполнить дополнительную отладку, записав значение cookie в переменную и зарегистрировав ее значение:

Полученные файлы cookie могут храниться как переменные потока JMeter (версии JMeter после 2.3.2 больше не делают этого по умолчанию). Чтобы сохранить файлы cookie как переменные, определите свойство CookieManager.save.cookies = true. Кроме того, перед сохранением к именам файлов cookie добавляется префикс «COOKIE_» (это позволяет избежать случайного повреждения локальных переменных). Чтобы вернуться к исходному поведению, определите свойство «CookieManager.name.prefix =» (один или несколько пробелов). Если этот параметр включен, значение файла cookie с именем TEST может называться $ {COOKIE_TEST}.

Источник: http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Cookie_Manager

Изменить: кто-то спросил, как была решена моя конкретная проблема. Оказалось, что это не имеет ничего общего с ssl конкретно, но другие несвязанные заголовки очень немного изменились в своем формате, поэтому регулярное выражение, которое мы использовали для сопоставления с ними, начало давать сбой. Поэтому я бы начал с просмотра ваших заголовков и сравнения разницы между тем, когда вы публикуете http и https.

person BlackGaff    schedule 23.02.2011
comment
Ваши предложения оказались совершенно неуместными, но в то же время очень полезными. Так что спасибо тебе. :) Таким образом, мы можем назвать это принятым ответом, я обнаружил, что JMeter вообще не имеет проблем с ssl-сертификатами, надежными или ненадежными. Вы указали мне на документы, которые были косвенно связаны с проблемой переменных, из-за которой у меня возникли проблемы. Я не буду вдаваться в подробности, потому что они очень специфичны для нашей реализации, но это просто связано с регулярным выражением, которое не адаптировалось к дополнительной информации, которую https добавляет в заголовок set-cookie. - person Brian Deacon; 24.02.2011
comment
Рад, что мои бредни пригодились :) - person BlackGaff; 24.02.2011
comment
Пришел сюда по другому поводу, но проблема решена. Спасибо @BlackGaff :) +1 - person Dexter; 07.01.2013
comment
@BrianDeacon ... не могли бы вы подробнее рассказать, как вы решили проблему? Кажется, у меня похожий сценарий. Я записал несколько запросов по HTTP, но мне нужно переключиться на https (поскольку у сервера теперь есть сертификат). Боюсь, что я не хочу перезаписывать сценарии, так как я много их настраивал. Заранее спасибо - person Dexter; 02.02.2013
comment
@Dexter Я добавил правку к вопросу, чтобы объяснить. Это было давно, поэтому я забыл некоторые детали. - person Brian Deacon; 04.02.2013