Jmeter - 查看结果 Table - 无法识别不同的线程循环

Jmeter - View Results In Table - Cannot Identify Different Thread Loops

我的环境:JMeter v2.12,远程 Oracle 12,JDK7

我正在使用 Table 中的查看结果来查看测试的一些结果。

我的线程组中有一些采样器创建了一些 XML 并将它们提交到 Web 服务。我正在使用 'View Results In Table' 侦听器来查看结果,但是对于许多循环,越来越难以发现详细信息引用的是哪个线程循环。

我的设置如下:

Thread Group-->No. of Users: 1, Loop: 8000
-CSV Data Set Config: (provides a csv file with variables for XML)
-Beanshell Sampler: (to create XML, sourcing values from the .csv)
-Beanshell Sampler: (adds SOAP header to XML instance)
-SOAP/XML-RPC Request: (injects SOAP message to webservice)
-View Results In Table

基本上因为我的线程组的用户数 = 1,所以很难发现特定采样器(显示在 Table 侦听器中的查看结果中)指的是哪个循环 - 请参见下面的示例屏幕截图我将循环计数设置为 3。

如您在屏幕截图中所见 - 'Thread Name' 列以 'Thread Group Name 1-1'.

格式显示

我希望它能从 1-1 值(例如 1-3 可能表示第 3 个循环)指示不同采样器与哪个循环相关联。当只指定 3 个循环时这不是问题,但如果我有 8000 个(这是我必须测试的)- 确定哪个结果是哪个循环将是一个问题。

所以 - 最后 - 我的问题。

当我的用户数 = 1 且循环计数 = 很多时,是否有任何方法可以让结果显示递增的线程组名称以反映哪个循环?

非常感谢!

sqeeky

使用循环时,有 2 个采样器是您真正应该关心的。首先,"Once Only Controller"。其次,"Counter"。您可以使用 "Counter" 在每次调用时递增一个数字,然后从采样器名称中引用该数字。只需将采样器命名为 "HTTPSampler - Does Whatever : ${__threadNum} - ${numSubitem}"

int numSubitem = 10;
int maxCounter = numSubitem - 1;
vars.put("numSubitem",Integer.toString(numSubitem));
vars.put("maxCounter",Integer.toString(maxCounter));

修改您的采样器名称以包含

MySampler - Thread: ${__threadNum}  Loop: ${__counter(TRUE,)}

因此您将收到以下内容(假设有 3 个线程和 3 个循环):

请参阅 How to Use JMeter Functions post 系列以获取有关上述和其他有用 JMeter 函数的额外信息。