如何仅提取线程组的 Min Max 和 Average

Posted

技术标签:

【中文标题】如何仅提取线程组的 Min Max 和 Average【英文标题】:How to extract only Min Max and Average of thread groups 【发布时间】:2018-12-05 23:49:32 【问题描述】:

我有一个场景,我有一个 api,其中 50、100 和 500 个用户在 1 秒的加速周期内访问 api -

50 users - 1 rampup
   + Duration assertion - 100
100 users - rampup
   + Duration assertion - 200
500 users - 1 rampup
   + duration assertion - 300

现在我在 Jenkins 中运行命令

path/jMeter/bin/jmeter -n -R remoteIP -t test.jmx -l path/$BUILD_NUMBER_result.jtl -e -o path/$BUILD_NUMBER_report/

现在在 Jmeter 中如何计算 50、100 和 500 个用户的最小值、最大值和平均值,并保存在一个文件中,比如 resultminmaxavg.csv,以便我可以选择文件并通过邮件发布。

如下 -

Users     Min    Max   Avg
50        378    455
100       333    655
500       322    344

如何计算JMeter中的数据?附图:

【问题讨论】:

请阅读Under what circumstances may I add “urgent” or other similar phrases to my question, in order to obtain faster answers? - 总结是这不是解决志愿者的理想方式,并且可能会适得其反。请不要将此添加到您的问题中。 【参考方案1】:

实现此目的的一种方法是添加一个 SummaryReport 侦听器,您需要将其配置如下:

在 testPlan 变量中定义一个 rootPath; 定义 3 个变量:50maxThreads、100maxThreads 和 500maxThreads 在每个ThreadGroup中,将上面3个变量的每个值定义为线程数,

在X用户线程组的每个SummaryReport监听器中,文件名配置如下:

$rootPath/$50maxThreads_test_outcome.csv 

祝你好运,我还没有尝试过,但它应该可以工作

【讨论】:

谢谢拉米。我在 /jmeter/bin/rootpath/$50maxThreads_test_outcome.csv 下看到已创建,但我没有看到摘要报告。它是使用以下标题创建的默认 csv timeStamp elapsed label responseCode responseMessage threadName dataType success failureMessage bytes sentBytes grpThreads allThreads URL Latency SampleCount ErrorCount IdleTime Connect XThreads 线程组(每个样本)应该有一个可用的平均值,但据我了解,您只有一个样本/API 调用。在摘要报告侦听器中,有一个配置按钮 - 检查它并从中选择您真正需要的内容。 Rami 我附上了测试的截图。还是没有运气。

以上是关于如何仅提取线程组的 Min Max 和 Average的主要内容,如果未能解决你的问题,请参考以下文章

如何仅使用 MIN-MAX 编写 excel 公式,而不使用 IF

sql MIN()和MAX()允许您从表中的列中提取最小值和最大值。第1行显示MIN()示例,它选择最小值

Java 8 流的 .min() 和 .max():为啥会编译?

数据结构作业——max_and_min(栈)

为啥使用 Pandas 的 max 和 min 函数会返回意外结果?

从 Presto 中的 JSON 数组中提取值