使用 Ant 运行 JMeter 3.0 测试时生成错误报告 [英] Generating a faulty report when running JMeter 3.0 test with Ant

查看:34
本文介绍了使用 Ant 运行 JMeter 3.0 测试时生成错误报告的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经研究了好几天了.基本上我想使用 Ant 从 JMeter 测试文件创建一个 HTML 报告.我正在使用 Linux Ubuntu 16.04.1.这是我的 build.xml :

I have been at it for days. Basically I want to create a HTML report from JMeter test file, using Ant. I am using Linux Ubuntu 16.04.1. Here is my build.xml :

<project name="performance-tests" default="run-performance-tests" basedir=".">
<property name="testpath" value="${user.dir}"/>
<poperty name="jmeter.home" value="/home/richard/Asjad/apache-jmeter-3.0"/>

<!-- Name of test (without .jmx) -->
<property name="test" value="Test"/>

<path id="jmeter.path">
  <fileset dir="${basedir}" includes="/*.jar" />
</path> 

<target name="run-performance-tests">
  <delete dir="${basedir}/target" quiet="true" failonerror="false"/>
<mkdir dir="${basedir}/target"/>

<!-- Allow jar to be picked up locally -->
<path id="jmeter.classpath">
    <fileset dir="${basedir}">
      <include name="ant-jmeter*.jar"/>
    </fileset>
</path>

  <taskdef name="jmeter"
    classpathref="jmeter.classpath"
    classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
  <echo message="Running load tests in testing.xml"/>
  <jmeter
       jmeterhome="${jmeter.home}"
       testplan ="${testpath}/${test}.jmx"
       resultlog="${basedir}/target/JMeterResults.xml">
    <jvmarg value="-Xincgc"/>
    <jvmarg value="-Xmx512m"/>
    <jvmarg value="-Dproperty=value"/>
    <property name="request.threads" value="5"/>
    <property name="request.loop" value="50"/>
    <property name="jmeter.save.saveservice.assertion_results" value="all"/>
    <property name="jmeter.save.saveservice.output_format" value="xml"/>

  </jmeter>
  <xslt in="${basedir}/target/JMeterResults.xml"
    out="${basedir}/target/Test.html"
    style="${basedir}/jmeter-results-detail-report.xsl"/>
</target>

这是我运行脚本时看到的:

This is what I see when I run the script:

Buildfile: /home/richard/Asjad/apache-jmeter-3.0/extras/build.xml

run-performance-tests:
   [delete] Deleting directory /home/richard/Asjad/apache-jmeter-3.0/extras/target
    [mkdir] Created dir: /home/richard/Asjad/apache-jmeter-3.0/extras/target
     [echo] Running load tests in testing.xml
   [jmeter] Executing test plan: /home/richard/Asjad/apache-jmeter-3.0/extras/TestPlan/Test.jmx ==> /home/richard/Asjad/apache-jmeter-3.0/extras/target/JMeterResults.xml
   [jmeter] Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release
   [jmeter] Writing log file to: /home/richard/Asjad/apache-jmeter-3.0/bin/jmeter.log
   [jmeter] Creating summariser <summary>
   [jmeter] Created the tree successfully using /home/richard/Asjad/apache-jmeter-3.0/extras/TestPlan/Test.jmx
   [jmeter] Starting the test @ Fri Jul 29 11:57:25 EEST 2016 (1469782645099)
   [jmeter] Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
   [jmeter] summary =     10 in 00:00:02 =    4.6/s Avg:   214 Min:   105 Max:   344 Err:     0 (0.00%)
   [jmeter] Tidying up ...    @ Fri Jul 29 11:57:27 EEST 2016 (1469782647345)
   [jmeter] ... end of run
     [xslt] Processing /home/richard/Asjad/apache-jmeter-3.0/extras/target/JMeterResults.xml to /home/richard/Asjad/apache-jmeter-3.0/extras/target/Result_One.html
     [xslt] Loading stylesheet /home/richard/Asjad/apache-jmeter-3.0/extras/jmeter-results-detail-report.xsl

BUILD SUCCESSFUL
Total time: 3 seconds

构建成功,然后它给了我一个 HTML 文件,当我打开它时,我看到:HTML 报告

The build succeeds and then it gives me a HTML file and when I open it I see this: HTML report

如果有人至少能告诉我我的错误或我应该去的方向,我会非常感激.

I would be really thankful if someone could at least tell me my mistake or direction I am supposed to go.

推荐答案

看起来 JMeter 开发人员破坏了 jmeter-results-detail-report.xsl 文件,这里报告了错误:

It looks like JMeter developers broke jmeter-results-detail-report.xsl file, bug was reported here:

  • https://bz.apache.org/bugzilla/show_bug.cgi?id=59918 It will be fixed in next Apache JMeter version 3.1.

为了恢复到以前的行为,请执行以下步骤:

In order to revert to previous behaviour take the following steps:

  1. 下载apache-jmeter-2.13.zip
  2. apache-jmeter-2.13/extras 文件夹中提取 jmeter-results-detail-report_21.xsl 文件并将其放到 JMeter 3.0 安装的extras"文件夹中
  3. 修改您的 build.xml 文件以使用 jmeter-results-detail-report_21.xsl 文件,例如:

  1. Download apache-jmeter-2.13.zip
  2. Extract jmeter-results-detail-report_21.xsl file from apache-jmeter-2.13/extras folder and drop it to "extras" folder of your JMeter 3.0 installation
  3. Modify your build.xml file to use jmeter-results-detail-report_21.xsl file like:

<xslt in="${basedir}/target/JMeterResults.xml"
    out="${basedir}/target/Test.html"
    style="${basedir}/jmeter-results-detail-report_21.xsl"/>

或者,您可以从 这里

请参阅 可视化 JMeter .jtl 文件作为 .xsl 样式表文章,了解有关将 JMeter XML 结果文件转换为 HTML 格式的更多详细信息.

See Visualizing JMeter .jtl Files Viewed as An .xsl Stylesheet article for more details on transforming JMeter XML result files to HTML format.

这篇关于使用 Ant 运行 JMeter 3.0 测试时生成错误报告的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆