首页 文章

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

提问于
浏览
0

我有一个具有以下结构的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登录 . 两个线程组的用户同时登录 .

目前,每当我更改总用户数时,我都必须完成手动创建/编辑这些CSV文件的过程 .

请通过我建议是否有任何 alternative time-saving & performance-efficient 方法可以满足我的方案要求(不使用CSV文件) .

如果你能用一些细节解释替代解决方案我会很感激,因为我对JMeter的东西很新 . 谢谢 .

2 回答

  • 0

    另一个想法是使用

    Username${__threadNum}

    对于第一个线程组和

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

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

  • 0

    您可以在每个线程中使用计数器 . 第一个线程中计数器的起始值为1,在第二个线程中为51.确保未选中“为每个用户独立跟踪计数器”复选框 .

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

    Username${thread1Count}
    

    对于第一个线程和

    用户名$ {} thread2Count

    第二个 .

相关问题