zoukankan      html  css  js  c++  java
  • 利用xsltproc转换jtl报告到html报告

    使用Jmeter测试完后并不能直接生成html报告,而是jtl报告。这里我们可以用xsltproc来解决。

      xsltproc是由DanielVeillard用来C语言编写的是一个快速XSLT引擎,
      它可以将通过XSL层叠样式表把XML转换为相应格式的文件,
      比如:HTML,XHTML,PDF...

      XSL指扩展样式表语言(EXtensible Stylesheet Language),
      把XML转换为HTML用的就是xls编写的样式表,
      所以如果要扩展这个报告,首先要对xls熟悉,
      才能更改和扩展样式表。
      可以在http://www.w3school.com.cn/xsl/index.asp这里进行此语言的学习。

    IDEA+Jmeter测试环境搭建

    1. 修改jmeter.properties配置文件
      jmeter.save.saveservice.output_format=xml
    2. 下载xsltproc文件并解压,可执行文件路径加到环境变量中
      下载路径:链接:https:pan.baidu.com/s/1qZpoLwo 密码:ky88

      参照此文:http:www.crifan.com/files/doc/docbook/docbook_dev_note/release/webhelp/download_xsltproc_win.html

    3. 复制报告模板文件
      复制代码
      将Jmeter安装目录extras下的jmeter-results-detail-report_21.xsl和
      jmeter-results-report_21.xsl模板文件复制到
      src est esources文件夹中,jmeter文件夹下面放.jmx文件,
      如果报告中缺失展开图标,一并复制collapse.png和expand.png到resources文件夹中

      复制代码
    4. 修改POM文件,有二个方案,方案一:在pom.xml里加入xsltproc执行插件,可以直接生成html报告
      复制代码
      <plugin>
        <groupId>com.lazerycode.jmeter</groupId>
        <artifactId>jmeter-maven-plugin</artifactId>
        <version>2.1.0</version>
         <ignoreResultFailures>true</ignoreResultFailures>
         <testResultsTimestamp>false</testResultsTimestamp>
         <testFilesIncluded>
           <jMeterTestFile>testdemo.jmx</jMeterTestFile>
         </testFilesIncluded>
        <executions>
           <execution>
               <id>jmeter-tests</id>
               <phase>verify</phase>
               <goals>
               <goal>jmeter</goal>
               </goals>
            </execution>
         </executions>
      </plugin>
      <plugin>
            <groupId>org.codehaus.mojo</groupId>
                 <artifactId>exec-maven-plugin</artifactId>
                 <version>1.6.0</version>
                 <executions>
                    <execution>
                       <phase>verify</phase>
                          <goals>
                             <goal>exec</goal>
                          </goals>
                        </execution>
                    </executions>
                  <configuration>
                  <executable>xsltproc</executable>
                  <arguments>
                      <argument>-o</argument>
                      <argument>target/jmeter/results/testdemo.html</argument>
      <argument>src/test/resources/jmeter-results-detail-report_21.xsl</argument>
      <argument>target/jmeter/results/testdemo.jtl</argument>
      </arguments> </configuration> </plugin>
      复制代码

      方案二:如果需要Jenkins持续集成,且服务器是Linux,xsltproc找不到路径的话,去掉exec-maven-plugin,在Jenkins里用shell命令来替换,
      详见《Jenkins+Maven+Jmeter接口自动化持续集成测试》)。

      那么IDEA里面去掉exec-maven-plugin后,如何转化jtl到html报告呢,可以在IDEA命令行输入以下命令:

      xsltproc -o target/jmeter/results/testdemo.html src/test/resources/jmeter-results-detail-report_21.xsl target/jmeter/results/testdemo.jtl

    5.  查看html报告

       

    接下去就是跟Jenkins集成,做持续集成测试,将在下一篇做详细介绍,尽请期待!

  • 相关阅读:
    内存泄露的小问题(转载)
    脚本错误:"return 语句不能在函数之外" (转载)
    转载:asp.net网页防刷新重复提交、防后退解决办法集!
    转载:一行代码搞定你的QueryString
    转载 PowerDesigner Name/Code自动调整
    无刷新仿google波形扭曲彩色Asp.net验证码
    转载:认识Web.config文件
    转载:将数据库从SQL2000迁移到SQL2005时,无法查看关系图的解决办法
    [转]WTL的windows mobile环境的配置(vs2008)[最终版,验证通过]
    [转].NET中Cache用法分析
  • 原文地址:https://www.cnblogs.com/a00ium/p/10404338.html
Copyright © 2011-2022 走看看