如何使用blazemeter记录器或Jmeter JMX脚本在性能测试中处理令牌认证?

问题描述

我想为我们的网站测试1万名用户。 (我们购买了Virtual Users Blaze-meter软件包)。用户场景为:

  1. 转到网站https://xxx.xxx.com/
  2. 使用用户名和密码登录/
  3. 然后将生成随机令牌,并将其重定向到另一个网站https://yyy.yyy.com/
  4. 使用上述生成的令牌进行身份验证。
  5. 转到特定页面进行实时会议(在页面上停留30-45分钟),然后退出

我尝试了那里的解决方案,但由于涉及的系统太多,因此无法处理令牌请求。

Handle dynamic value handling ,但我不确定它是否给出正确的结果。

Also tried this,但是我只有200个有效登录名,所以我该如何模拟1万用户

I tried using CSV handle,但还是同样的问题。我需要创建更多有效的登录名吗?

我们需要使用用户名和密码登录,然后生成访问令牌。 (对于每个请求都是唯一的)。 JMeter记录了步骤:

Jmeter recorded steps

登录代码和范围:

Sign in code and scope

解决方法

  1. 您需要熟悉correlation的概念,因为它使用的动态变量需要从上一个响应中提取并传递给下一个请求,因此您将无法重播记录的脚本。记录的硬编码值不起作用
  2. 您需要熟悉OpenID concept才能了解幕后情况。只是相关性的另一种特殊情况,有关更多详细信息,请参见OpenID Connect - How to Load Test with JMeter文章