1. 程式人生 > >Jmeter 自動生成測試報告

Jmeter 自動生成測試報告

load 共享 pat 目錄生成 express image lane ssp res

Jmeter 測試結束以後發現結果無法共享給其他的相關人員,所以我們更希望生成一份html的報告,共享給研發部的其他的人員來查看,查看了下文檔通過ant 可以生成一份簡易的測試報告,不過暫時可以滿足需求。

  1.首先需要下載Ant,安裝完成Ant 以後執行ant -version 查看是否安裝成功;

  技術分享

  2.需要將Jmeter 目錄下ant-jmeter-1.1.1.jar 拷貝到ant 的lib下(這裏我使用的Jmeter的版本是3.2,所以ant-jmeter的版本是1.1,ant-jmeter-1.1.1.jar 存放在..\apache-jmeter-3.2\extras目錄下);

  3.修改Jmeter的bin目錄下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml;

  4.編寫ant腳本,這個腳本網上很多可以拿過來改下下即可,這裏是我根據自己需求更改的build.xml文件

  

<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="all" basedir=".">
    <!--為生成的jtl和html文件加時間戳-->
    <
tstamp> <format property="time" pattern="yyyyMMddHHmm" /> </tstamp> <!--jmeter安裝路徑--> <property name="jmeter.home" value="D:\jmeter\apache-jmeter-3.2"/> <!--生成jtl文件結果存放路徑--> <property name="jmeter.result.jtl.dir" value="${jmeter.home}/report/jtl"
/> <!--生成html文件結果存放路徑--> <property name="jmeter.result.html.dir" value="${jmeter.home}/report/html"/> <!--生成的結果報告的前綴--> <property name="ReportName" value="TestReport" /> <!--jlt和html文件名稱--> <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="all"> <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}"> <!--項目測試腳本jmx文件所在路徑--> <testplans dir="${jmeter.home}/workspace" 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> <target name="report"> <!--使用jmeter自己的轉化文件:將jtl轉化為xsl文件,改為自己的xsl文件所在路徑--> <tstamp> <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" /></tstamp> <xslt classpathref="xslt.classpath" force="true" in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-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>

  5.ant 腳本寫完成以後存放在自己定義好的目錄,執行ant命令就會自動在最初定義好的目錄生成一份簡易的測試報告。

技術分享

Jmeter 自動生成測試報告