ANT呼叫JMeter執行指令碼並生成html測試報告
阿新 • • 發佈:2019-01-08
1、 下載解壓ANT
2、 下載解壓JMeter
3、 設定環境變數:ANT_HOME=ANT解壓的主目錄,JMETER_HOME= JMETER解壓的主目錄,將%ANT_HOME%\bin;加入PATH中
4、 將JMeter目錄下的apache-jmeter-2.12\lib\ant-jmeter-1.1.1.jar檔案拷貝到apache-ant-1.9.6\lib目錄下。(用處:Ant執行時才能找到”org.programmerplanet.ant.taskdefs.jmeter.JMeterTask”這個類,從而成功觸發JMeter指令碼)
5、 編輯build.xml檔案
<?xml version="1.0" encoding="iso-8859-1"?>
<project name="build-tests" default="run-load-tests" basedir=".">
<property name="jmeter.home" value="${basedir}/apache-jmeter-2.12" />
<path id="jmeter.path">
<fileset dir="." includes="ant-jmeter-1.1.1.jar" />
</path>
<target name="run-load-tests">
<delete dir="${target.dir}" quiet="true" failonerror="false"/>
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" classpathref="jmeter.path" />
<echo message="Running load tests in testing.xml" />
<jmeter
jmeterhome="${jmeter.home}"
testplan="${basedir}/apache-jmeter-2.12/scripts_sky/allZuhe.jmx"
resultlog="${basedir}/apache-jmeter-2.12/scripts_sky/allZuhe.xml">
<jvmarg value="-Xincgc"/>
<jvmarg value="-Xmx128m"/>
<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}/apache-jmeter-2.12/scripts_sky/allZuhe.jtl"
out="${basedir}/apache-jmeter-2.12/scripts_sky/allZuhe.html"
style="${basedir}/apache-jmeter-2.12/extras/jmeter-results-detail-report_21.xsl"/>
<!-- 因為上面生成報告的時候,不會將相關的圖片也一起拷貝至目標目錄,所以,需要手動拷貝 -->
<copy todir="${basedir}/apache-jmeter-2.12/scripts_sky">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>
6、 開啟CMD命令視窗,將目錄切換至build.xml檔案所在目錄,輸入如下命令:ant –buildfile build.xml ;出現如下介面即成功呼叫且生成html檔案。如下圖:
7、 大家在執行ANT命令時,可能會出現各種問題,請注意看命令視窗的提示,也可提問,告訴大家解決方法。