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

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

问题描述

我一直在这里待了好几天。基本上我想用JMeter测试文件创建一个HTML报告。我正在使用Linux Ubuntu 16.04.1。这是我的build.xml:

 < project name =performance-testsdefault =run-performance-tests  的basedir => 
< property name =testpathvalue =$ {user.dir}/>
< poperty name =jmeter.homevalue =/ home / richard / Asjad / apache-jmeter-3.0/>

<! - - 测试名称(不含.jmx) - >
< property name =testvalue =Test/>

< fileset dir =$ {basedir}includes =/ *。jar/>
< / path>

< target name =run-performance-tests>
< delete dir =$ {basedir} / targetquiet =truefailonerror =false/>
< mkdir dir =$ {basedir} / target/>

<! - 允许在本地拾取jar - >
<路径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 =在testing.xml中运行负载测试/>
jmeterhome =$ {jm​​eter.home}
testplan =$ {testpath} / $ {test} .jmx
resultlog =$ {basedir } /target/JMeterResults.xml>
< jvmarg value = - Xincgc/>
< jvmarg value = - Xmx512m/>
< jvmarg value = - Dproperty = value/>
< property name =request.threadsvalue =5/>
< property name =request.loopvalue =50/>
< property name =jmeter.save.saveservice.assertion_resultsvalue =all/>
< property name =jmeter.save.saveservice.output_formatvalue =xml/>

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



这是我在看到我运行脚本:

 构建文件:/home/richard/Asjad/apache-jmeter-3.0/extras/build.xml 

运行性能测试:
[delete]删除目录/home/richard/Asjad/apache-jmeter-3.0/extras/target
[mkdir]创建目录:/ home /richard/Asjad/apache-jmeter-3.0/extras/target
[echo]在testing.xml中运行负载测试
[jmeter]执行测试计划:/ 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位服务器VM警告:使用增量CMS不推荐使用,并且可能会在未来版本
[jmeter]将日志文件写入:/home/richard/Asjad/apache-jmeter-3.0/bin/jmeter.log
[jmeter]创建摘要文件< summary>
[jmeter]使用/home/richard/Asjad/apache-jmeter-3.0/extras/TestPlan/Test.jmx
[jmeter]成功创建树。开始测试@ Fri Jul 29 11:57: 25 EEST 2016(1469782645099)
[jmeter]在端口4445上等待可能的Shutdown / StopTestNow / Heapdump消息$ 00 $:00 = 00:00 = 4.6 / s平均:214分钟: 105最大:344错误:0(0.00%)
[jmeter]整理... @ Fri Jul 29 11:57:27 EEST 2016(1469782647345)
[jmeter] ...运行结束
[xslt]将/home/richard/Asjad/apache-jmeter-3.0/extras/target/JMeterResults.xml处理为/home/richard/Asjad/apache-jmeter-3.0/extras/target/Result_One.html
[xslt]载入样式表/home/richard/Asjad/apache-jmeter-3.0/extras/jmeter-results-detail-report.xsl

建立成功
总时间:3秒

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



如果有人能够告诉我我的错误,我会非常感激的,方向我应该去。

解决方案

它看起来像JMeter开发人员打破 jmeter-results-detail- report.xsl 文件,错误报告在这里: b


  • https://bz.apache.org/bugzilla/show_bug.cgi?id=59918
    它会固定在下一个Apache JMeter版本3.1中。


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


    1. 下载 apache-jmeter-2.13.zip
    2. 从<$提取 jmeter-results-detail-report_21.xsl 文件c $ c> apache-jmeter-2.13 / extras 文件夹并将其放到JMeter 3.0 instal的extras文件夹中lation

    3. 修改您的 build.xml 文件以使用 jmeter-results-detail-report_21。 xsl 文件如:

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


    另外,您也可以从< a href =https://svn.alfresco.com/repos/alfresco-open-mirror/benchmark/scripts/SHARE/share-0002/3.4.6/templates/jmeter-results-detail-report_21.xsl = nofollow> here

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


    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
    

    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.

    解决方案

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

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

    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"/>
      

    Alternatively you can get XSLT file i.e. from here

    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天全站免登陆