Как я могу имитировать аутентификацию формы в Tomcat, используя JMeter? - PullRequest
2 голосов
/ 30 августа 2011

Я очень новичок в JMeter, но у меня есть некоторые идеи о том, для чего можно использовать JMeter.Также у меня есть приложение Tomcat с включенной аутентификацией формы.Поток, который я пытаюсь использовать, состоит из:

  • HTTP-запросов по умолчанию
  • HTTP Cookie Manager
  • HTTP Header Manager

и следующий набор сэмплеров HTTP:

  • страница выхода (/app/logout.jsp)
  • страница входа (/app/login.jsp)
  • j_security_check (/ app/j_security_check)

, где включены функции перенаправления Follow и Use KeepAlive.Я не могу понять, почему ответ на запрос j_security_check перенаправляет на logout.jsp.После проверки ответа HTTP в Chrome, я заметил, что такой запрос перенаправляет на index.jsp, но никогда на страницу выхода, если учетные данные в порядке.Прежде всего, у меня была идея, что я не имитирую все заголовки HTTP браузера, но у меня не получилось после того, как я добавил их все в диспетчер заголовков HTTP:

User-Agent  Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.859.0 Safari/535.2
Accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding gzip,deflate,sdch
Accept-Language en-US,en;q=0.8
Host    localhost:8080
Referer http://localhost:8080/whapp/index.jsp

Но даже после указания всехя не могу имитировать аутентификацию ... Есть идеи?Заранее спасибо.

1 Ответ

2 голосов
/ 02 сентября 2011

Вы пытались записать процесс входа в систему, или все это было сделано вручную?

Если вручную, в одном из ваших запросов может отсутствовать параметр.

Если записано, это может быть жестко заданный параметр, который должен быть динамическим (JSessionID и т. Д.). Возможно, вам понадобится добавить GET с регулярным выражением, чтобы получить это значение и передать его в POST.

Если в качестве параметра ожидается JSessionID, вы не сможете передать его через менеджер файлов cookie, вам нужно будет сделать это как параметр HTTP.

Краткое описание записи см. http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf

.
...