2

我正在尝试使用 JMeter 对在本地 VM 上运行的 Web 登录表单进行负载测试,但我不断收到 401 Unauthorized 响应。我设置了一个 JMeter 代理来记录这些步骤,然后添加了 HTTP Cookie 管理器,但它仍然无法进行身份验证。

HTTP 请求

请求重定向

请求第二次重定向

该页面应该是用户登录成功后的个人资料页面

Cookie 管理器被使用并将 _auth_session 添加到请求中,但登录仍然失败。初始请求是传递用户名/密码信息的 POST 方法。我似乎无法弄清楚为什么它实际上没有进行身份验证。当我记录步骤时,它工作正常,但播放失败。这似乎是一个无头浏览器问题,因为在 Selenium IDE 中记录相同的步骤可以完美地播放它并且没有 401 响应。任何想法将不胜感激!

运行 Windows 7/64

4

2 回答 2

0

如果不看脚本,真的很难告诉你出了什么问题。所以我只是猜测并给你几个指示。

  1. 您可能希望将 cookie 管理器保持在块的其余部分之上。那是在线程控制器之下(即线程组级别)。这可能不是问题,因为我可以在您的失败步骤中看到 _auth_session cookie,但这仍然是一个好习惯。

  2. 如果您认为这可能是由于服务器未识别浏览器,您可以使用标头管理器并通过它发送浏览器(user_agent)信息。看例子

  3. 尝试摆弄 cookie 管理器中的 Cookie 政策和实施选项。

我希望这有帮助。

于 2013-01-09T19:32:49.820 回答
0

我终于找到了我的问题的答案,所以如果其他人遇到同样的困难,请查看这个网站。

http://ertw.com/blog/2010/06/29/load-testing-a-rails-app-and-the-authenticity_token/

我遇到的问题是针对具有隐藏的authenticity_token 元素的Rails Web 应用程序进行身份验证。需要一个正则表达式来提取动态值,然后将其包含在 JMeter 的表单中。

于 2013-01-11T18:29:33.317 回答