使用JMeter登录需要帮助

时间:2015-12-19 15:11:03

标签: jmeter

Here's the link to screenshot 这是我用我的产品登录[Rails-app]使用Blazemeter chrome扩展记录的内容。我应该像图片中那样制作相同且相同的采样器HTTP请求吗?它只包含两个POST请求,剩下的就是GET请求。

2 个答案:

答案 0 :(得分:0)

您需要分析这些帖子请求并识别与用户名/密码相关的参数。

您可以在Jmeter中使用CSV数据配置,然后您可以提供Jmeter可用于登录多个用户的用户名/密码列表。

此外,您需要检查是否有额外的安全参数与登录请求一起发送。如果有,那么你也需要处理它。

另外,建议您在测试计划中添加以下元素并了解其用法......

  • cookie manager
  • 标题管理员

您可以查看以下博客,了解有关通过Jmeter登录的更多示例

http://sjpknight.com/recording-a-login-script-with-jmeter/

答案 1 :(得分:0)

大多数情况下的Rails应用程序都有CSRF protection,它会产生一个名为<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script>的额外请求参数,需要从之前的响应中提取动态值并将其与下一个请求一起传递。

如果您查看http://nov26.freshpo.com/support/login页面来源,您将能够看到令牌:

Ruby CSRF Token

因此,您需要按如下方式设计测试:

  • 获取nov26.freshpo.com/support/login页面的请求
  • 使用用户名,密码和上述令牌向nov26.freshpo.com/support/login页面发送请求

为了获得令牌,我建议使用CSS/JQuery Extractor配置如下:

  • 参考名称:任何有意义的内容,即authenticity_token
  • CSS / JQuery Expression:token
  • 属性:meta[name=csrf-token]

其他输入可能保持不变。

在必要时将提取的值引用为content

JMeter passing dynamic parameter

有关如何在JMeter测试中绕过CSRF保护的更多详细信息,请参阅How to Load Test CSRF-Protected Web Sites文章