- <project name="ant-jmeter-test" default="run" basedir=".">
- <tstamp>
- <format property="time" pattern="yyyyMMddhhmm" />
- </tstamp>
- <!-- 需要改成自己本地的 Jmeter 目录 -->
- <property name="jmeter.home" value="F:\apache-jmeter-3.0" />
- <!-- 发送给哪些人 -->
- <property name="mail_to" value="[email protected]" />
- <!-- 抄送给哪些人, 多个用逗号隔开 /-->
- <!--property name="mail_cc" value="[email protected],[email protected]"/-->
- <property name="report.title" value="接口测试报告" />
- <!-- jmeter 生成 jtl 格式的结果报告的路径 -->
- <property name="jmeter.result.jtl.dir" value="F:\apache-jmeter-3.0\demo\report\jtl"
- />
- <!-- jmeter 生成 html 格式的结果报告的路径 -->
- <property name="jmeter.result.html.dir" value="F:\apache-jmeter-3.0\demo\report\html"
- />
- <!-- 生成的报告的前缀 -->
- <property name="ReportName" value="TestReport" />
- <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"
- />
- <!-- 定义次 build.xml 要执行全部的任务 -->
- <target name="run">
- <antcall target="test" />
- <antcall target="report" />
- <antcall target="mail" />
- </target>
- <!-- 第一个任务, 执行 test-->
- <target name="test">
- <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"
- />
- <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
- <!-- 声明要运行的脚本."*.jmx" 指包含此目录下的所有 jmeter 脚本 -->
- <testplans dir="F:\apache-jmeter-3.0\demo" includes="*.jmx" />
- <property name="jmeter.save.saveservice.output_format" value="xml" />
- </jmeter>
- </target>
- <!-- 引入外部 jar 包 -->
- <path id="xslt.classpath">
- <fileset dir="${jmeter.home}/lib" includes="xalan*.jar" />
- <fileset dir="${jmeter.home}/lib" includes="serializer*.jar" />
- </path>
- <!-- 执行第二个任务, 生成报告 -->
- <target name="report">
- <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-detail-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>
- <!-- 将控制台输出到文本中 -->
- <record name="${jmeter.result.html.dir}/${ReportName}${time}.txt" loglevel="info"
- append="no" action="start" />
来源: http://www.bubuko.com/infodetail-3164033.html