ant运行jmeter的html结果与jmeter自运行的聚合报告结果各个参数相差很大
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ant运行jmeter的html结果与jmeter自运行的聚合报告结果各个参数相差很大相关的知识,希望对你有一定的参考价值。
我用ant运行jmeter得到html网页结果,不动jmeter任何参数点击jmeter运行得到的聚合报告与html结果进行对比,各个参数相差很大,其中请求数在线程很少运行时间不长的情况下是一样的,一旦线程增多或是运行时间变长,html网页中的时间会比聚合报告的时间显示要大一点,特别是吞吐量有时差距html会是聚合报告的两倍,各位大神求解答,此问题困扰无比
Ant是一个类似make的工具,用来编译/运行/测试java程序。 构建、包装和发布过程中几乎每一件事都可以由Ant的任务来处理。JMETER的测试结果一般生成的是一份聚合报告,如果想用ANT生成具体的测试报告,需要这样的一个jar包 ant-jmeter-1.0.9.jar 里面提供的一个JMeterTask的类来运行JMTER的测试脚本,生成jtl的结果文件,然后用XSLT来把.jtl的结果文件转化为.html形式的结果报告。 参考技术A 我也是这样,请问后来解决了吗? 参考技术B <?xml version="1.0" encoding="UTF8"?>
<project name="Jmeter-TestCase" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!--jmeter的目录-->
<property name="jmeter.home" value="C:\apache-jmeter-3.0" />
<property name="jmeter.result.jtl.dir" value="C:\apache-jmeter-3.0\TestCase\report\jtl" />
<property name="jmeter.result.html.dir" value="C:\apache-jmeter-3.0\TestCase\report\html" />
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="$jmeter.result.jtl.dir/$ReportName$time.jtl" />
<property name="jmeter.result.htmlName" value="$jmeter.result.html.dir/$ReportName$time.html" />
<target name="run">
<antcall target="test" />
<antcall target="report" />
</target>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="$jmeter.home" resultlog="$jmeter.result.jtlName">
<testplans dir="C:\apache-jmeter-3.0\bin\templates" includes="*.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>
<path id="xslt.classpath">
<fileset dir="$jmeter.home/lib" includes="xalan*.jar"/>
<fileset dir="$jmeter.home/lib" includes="serializer*.jar"/>
</path>
<!--jmeter謩xml模靴-->
<target name="report">
<xslt
classpathref="xslt.classpath"
force="true"
in="$jmeter.result.jtlName"
out="$jmeter.result.htmlName"
style="$jmeter.home/extras/jmeter-results-detail-report_21.xsl">
<param name="dateReport" expression="$report.datestamp"/>
</xslt>
<copy todir="$jmeter.result.html.dir">
<fileset dir="$jmeter.home/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>
ANT / JMeter - 长时间运行的测试 - 停止写入摘要结果
【中文标题】ANT / JMeter - 长时间运行的测试 - 停止写入摘要结果【英文标题】:ANT / JMeter - long running test - stops writing the summariser results 【发布时间】:2015-07-15 15:34:22 【问题描述】:我有一个 WebService,我每 2 秒点击一次该 WebService,有 1 个用户连续 5 天使用 jmeter。 我使用 ANT 调用 JMeter。我在调用 jmeter 时使用 ANT 为 jmeter 设置了 4GB 堆大小。我没有为 ANT 设置任何 ANT_OPTS。 (我不确定 ANT 将采用的默认堆大小)
当我开始 jmeter 测试时,它工作正常。我每 30 秒在控制台中获得 30 次 jmeter summariser 输出,这很棒。
问题是 - 3 或 4 天后,它停止在控制台中写入摘要结果(前 3 天它工作得非常好。没有问题)。 ANT 构建尚未完成。它仍在运行。 看起来 jmeter 停止工作/挂起。但我不认为它使用 4GB,因为我看到更多可用内存。我在任何地方的日志中都没有看到任何异常。如果我尝试访问它,API 仍然运行良好。 ANT / jmeter有问题吗?我应该为这个长期运行的 ANT 目标分配更多空间吗?
试了2次。第一次运行了 3 天,没有任何问题。第二次几乎 4 天没有任何问题。但它不会连续运行 5 天。
注意:
与 WebService 服务器无关。 jmeter 机器有 16GB 内存。除了这个测试(ANT & jmeter),我不运行其他任何东西。
我在 JMeter 中使用 SOAP/XML RPC 采样器
【问题讨论】:
对我的回答有任何反馈吗? 【参考方案1】:您是否设置了 HTTP 请求:
连接超时
响应超时
使用 HTTP 请求默认值进行设置,以便将它们应用于所有请求:
http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request_Defaults您的底层服务器可能遇到问题或网络遇到问题。
如果您没有设置其中之一,那么在这种情况下,JMeter 将无限等待(默认情况下)等待永远不会出现的响应,给您的印象是它正在挂起,但事实并非如此。
【讨论】:
正如我所说,这不是服务器问题,因为它运行良好。什么是默认响应超时? jmeter 会等待超过 1 天的响应吗? JMeter 默认无限等待 认真的吗?我以为 300 秒是默认值!你知道房产名称吗? 我认为是这个 - httpclient.timeout 对不起,我在我的问题中提供了错误的信息,即它是一个 Web 服务。我发送 SOAP/XML RPC 请求。但我认为我仍然可以使用相同的属性 -httpclient.timeout
来设置超时。我会检查。但我会在 5 天后知道答案:)。以上是关于ant运行jmeter的html结果与jmeter自运行的聚合报告结果各个参数相差很大的主要内容,如果未能解决你的问题,请参考以下文章