时间:2017-01-17 21:13:21

标签: api authentication http-headers jmeter blazemeter

我是Jmeter的新手。尝试使用此工具进行负载/性能测试。

步骤进行:

  • 转到library.xxx.com
  • 登录
  • 退出

我正在尝试的应用程序允许用户使用用户名/密码登录。然而,在后台,如果用户具有正确的凭证,则他/她被发出持有者令牌。在用户注销之前,此令牌有效。该承载令牌是针对用户凭证的验证而生成的。

我使用Jmeter所面临的问题是如何在整个测试过程中保留此令牌,即使其成为动态。

这是呼叫序列 -

enter image description here

现在,当我使用blazemeter的chrome扩展来记录测试并将其加载到Jmeter中时 - 这是它的加载方式

[![在此处输入图像说明] [2]] [2]

当auth.onecl .... com第一次发出Post请求时,它会通过。

然而,当它进行另一次呼叫时,由于承载令牌无效而失败。我比较调用序列的Request标头时唯一的区别是

在第二个中缺少“授权:持票人5a010a8f995d2”。

我使用了正则表达式提取器,BeanShell处理器等,但没有任何效果。

这是我到目前为止所尝试的内容 -

Jmeter testing for Login

JMeter Basic Authentication

enter image description here

1 个答案:

答案 0 :(得分:0)

Authorization: bearer xxxxx表示您的应用程序受OAuth 2.0保护,因此您有2个选项(取决于您的应用程序设计):

  • 如果此OAuth令牌是永久性的 - 只需使用嗅探器工具获取所有这些令牌,并将其与用户凭据一起放入CSV文件中
  • 如果令牌的生命周期有限 - 它仍然可以关联,请查看How to Run Performance Tests on OAuth Secured Apps with JMeter文章,了解有关绕过JMeter测试中OAuth挑战的更多详细信息