如何计算JMeter生成的csv文件的平均响应时间?

时间:2014-09-18 21:24:56

标签: csv time jmeter response average

我正在运行Ant任务来运行我的JMeter脚本或jmx文件。该脚本运行平稳并生成一个csv文件,其中包含以下(标准)信息:timeStamp,elapsed,label,responseCode,threadName,success,bytes,grpThreads,allThreads,Latency,sampleCount,ErrorCount和Hostname。

我的问题是:如何计算此CSV文件的平均响应时间?公式是什么?我知道如何将CSV文件加载到MS-Excel中,但根本不知道经过时间和延迟与平均响应时间之间的关系。

如果可能的话,任何人都可以提供一些解释。谢谢!

- Ishti

2 个答案:

答案 0 :(得分:5)

平均响应时间是所有elapsed(第二)列值的简单算术平均值

根据The Load Reports指南

,您可以忽略Latency
  

LATENCY是您到达服务器的请求所涉及的延迟。   从服务器接收响应所需的响应时间是响应时间+延迟的总和。

给定一个简单的测试计划,对http://example.com域执行2个请求,结果.jtl文件如下所示:

  

1411131392025, 1002 ,HTTP请求,200,OK,线程组1-1,文本,true,1591,1002   1411131393151, 187 ,HTTP请求,200,确定,线程组1-1,文本,真实,1591,179

如果使用View Results in Table侦听器打开此文件,输出将如下所示:

View Results in Table

在Aggregate Report侦听器中打开相同的文件会提供以下输出:

Aggregate Report

因此,您可以看到Average时间为594毫秒。它计算为(1002 + 187) / 2

在Excel或同等版本中,您可以使用Average功能:

Excel Average

对于其他字段,公式引用JMeter的Calculator class source

答案 1 :(得分:3)

要应用平均响应时间的公式,您应首先获得个人响应时间的值。根据您的声明,这是不可用的。

<jmeter jmeterhome="C:\apache-jmeter-2.11"
testplan="${basedir}\tests\Loadtest.jmx"
resultlog="${basedir}\tests\LoadtestResults.jtl">
<property name="jmeter.save.saveservice.output_format" value="csv" />
</jmeter>

如build.xml中所述,您必须使用结果日志&#34; LoadtestResults.jtl&#34;

并按照以下说明进行处理,以获得响应时间,错误%等。

  

java -jar CMDRunner.jar --tool Reporter --generate-csv&#34; C:\ Aggregate_Report.csv&#34; --input-jtl&#34; C:\ tests \ LoadtestResults.jtl&#34; --plugin-type AggregateReport

希望这会有所帮助。

相关问题