Jmeter+ant

1、下载 ant,解压到非中文目录,并配置环境变量,不会的自行 google

2、将 jmeter 中 extras 子目录里的 ant-jmeter-1.1.1.jar 复制到 ant 中的 lib 子目录下

3、修 改 jmeter 中 bin 目 录 下 的 jmeter.properties , 找 到 jmeter.save.saveservice.output_format,去掉前面的#并把值设置为 xml,重启jmeter

4、建如下的脚本目录结构,其中 build.xml 为核心文件

5、最后,在 cmd 窗口中切换到 D:\jmeter_test 目录下(这是我的目录),输入命令 ant, 会在 html 目录下生成报告

build.xml修改如下:

 

<?xml version="1.0" encoding="utf-8"?>

<project name="apijmeter"default="all"basedir=".">

    <tstamp>

        <format property="time"pattern="yyyyMMddhhmm" />

    </tstamp>

    <!-- jmeter中extras路径 -->

    <property name="basedirectory"value="/Users/chengyanan/Downloads/apache-jmeter-5.0/extras" /> 

    <!-- 需要改成自己本地的 Jmeter 目录-->

    <property name="jmeter.home"value="/Users/chengyanan/Downloads/apache-jmeter-5.0" />

    <!-- jmeter生成jtl格式的结果报告的路径-->

    <property name="jmeter.result.jtl.dir"value="/Users/chengyanan/Downloads/apache-jmeter-5.0/apijmeter/results/jtl" />

    <!-- jmeter生成html格式的结果报告的路径-->

    <property name="jmeter.result.html.dir"value="/Users/chengyanan/Downloads/apache-jmeter-5.0/apijmeter/results/html" />

    <!-- 生成的报告的前缀 -->

    <property name="ReportName"value="Jmeter测试报告" />

    <!-- 生成各种文件-->

<!--<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" />-->

<property name="jmeter.result.jtlName"value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />

    <!--<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" />-->

<property name="jmeter.result.htmlName"value="${jmeter.result.html.dir}/${ReportName}${time}.html" />

 

<path id="xslt.classpath">

<fileset dir="${jmeter.home}/lib"includes="xalan-2.7.2.jar"/>

<fileset dir="${jmeter.home}/lib"includes="serializer-2.7.2.jar"/>

</path>

 

    <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"指包含此目录下的所有jmeter脚本 -->

            <testplans dir="/Users/chengyanan/Downloads/apache-jmeter-5.0/apijmeter/scripts"includes="接口层性能测试.jmx" />

        </jmeter>

    </target>

<!-- jmeter生成的报告模板,在extras里-->

    <target name="report">

<tstamp> <format property="report.datestamp"pattern="yyyy/MM/dd HH:mm" /></tstamp>

        <xslt 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>

</project>

执行ant后,下面的代表完成。

 

 

 

posted on 2019-09-15 16:48  barton123  阅读(187)  评论(0编辑  收藏  举报

导航