吞吐量控制器的目的?
问题内容:
我需要一些帮助来使用JMeter。我想记录两种不同的情况,例如单击2个不同的按钮。如果我尝试为2个用户运行,则一个用户应按第一个按钮,另一个用户应同时按另一个按钮。
我知道这是基本问题。但是我是这个新手。那就是为什么在这里问。我已经尝试过如下所示:
Thread Group
-Throughput Controller
--Login
--Clicking 1st button
-Throughput controller
--Login
--Clicking 2nd button
当我使用CSV数据集配置与2个用户一起运行时,两个登录名都使用同一用户。
而且我还需要测试并发性。我不确定如何正确执行此操作。有人可以帮我吗?
问题答案:
-
如果您有多个迭代,则吞吐量控制器将正常工作。
也就是说,您应该有N个循环(例如,使用循环控制器),其子吞吐量控制器设置为X百分比(X为整数,0 <= X <=
100)-因此,N个循环中的X%也是整数值。
您可以查看此讨论以获取更好的示例和解释。 -
对于您的情况,您可以尝试使用以下构造:
Thread Group
Number of Threads = 2
Loop Count = 1
+- While Controller
Condition = ${__javaScript(“${login}”!=”“,)}
+- CSV Data Set Config
Filename = users.csv
Variable Names = login,pwd
Delimiter = ,
+- Loop Controller
Loop Count = 10
+- Login
+- Throughput Controller
Percent Execution
Throughput = 50.0
+- Clicking 1st button
+- Throughput Controller
Percent Execution
Throughput = 50.0
+- Clicking 2nd button
+- Logout
其中
-有2个线程(线程组:线程数= 2)同时启动,每个线程都从csv文件(同时使用Controller + CSV数据集配置)提取的唯一凭据进行登录;
-整个测试流程-登录>单击按钮(第一次或第二次)>注销-将使用循环控制器重复N次,这将使吞吐量控制器正常工作。