利用xsltproc轉換jtl報告到html報告

使用Jmeter測試完後並不能直接生成html報告,而是jtl報告。這裏咱們能夠用xsltproc來解決。html

  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這裏進行此語言的學習。
web

IDEA+Jmeter測試環境搭建shell

  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\test\resources文件夾中,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接口自動化持續集成測試》)。maven

    那麼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集成,作持續集成測試,將在下一篇作詳細介紹,盡請期待!spa

相關文章
相關標籤/搜索