在 JMeter 中使用 CSV 的替代方法(用于生成用户名)

Alternatives to using CSV in JMeter (for generating usernames)

我有一个具有以下结构的 JMeter 测试计划

Test Plan

**ThreadGroup1**
--CSV Data Config-001
----SimpleController
--------------LoginRequest
--------------Action-abc-Request

**ThreadGroup2**
--CSV Data Config-002
----SimpleController
--------------LoginRequest
--------------Action-xyz-Request

我有两个 CSV 文件,其中包含这样的用户列表..

**CSV-001**
Username1
Username2
.. ..
Username50

**CSV-002**
Username51
Username52
.. ..
Username100

在我的场景中,我需要 运行 对 100 个用户进行负载测试。 50 个用户从 ThreadGroup1 登录,另外 50 个用户从 ThreadGroup2 登录。来自两个线程组的用户同时登录。

目前,每当我更改总用户数时,我都必须手动 creating/editing 这些 CSV 文件。

如果有任何替代的省时且高效的方法可以满足我的场景要求(不使用 CSV 文件),请提出建议。

如果您能详细解释替代解决方案,我将不胜感激,因为我对 JMeter 的东西还很陌生。谢谢

您可以在每个线程中使用一个计数器。第一个线程中计数器的起始值为 1,第二个线程中为 51。确保未选中 'Track counter independently for each user' 复选框。

如果将引用名称分别设置为 thread1Count 和 thread2Count,则可以使用

Username${thread1Count} 

第一个线程和

用户名${thread2Count}

第二次。

另一个想法是使用

Username${__threadNum}

第一个线程组和

Username${__BeanShell(ctx.getThreadNum()+Z+1)}

第二个,其中 Z 等于线程组 1 中的线程总数。您还需要加 1,因为 ctx.getThreadNum() returns 线程编号使用基于 0 的索引,而 __threadNum 函数是基于 1 的。