jmeter+ant接口测试平台搭建

jmeter+ant接口测试平台搭建(windows10)

1.Java环境配置

下载安装JDK步骤参考:https://www.runoob.com/java/java-environment-setup.html#win-install

2.jmeter下载安装与环境配置

1)下载jmeter

官方下载地址:https://jmeter.apache.org/download_jmeter.cgi

下载后解压到工作目录下。

2)环境配置

打开电脑系统【高级环境设置量】-【环境变量】,新建系统变量JMETER_HOME,变量值E:\apache-jmeter-5.2.1(jmeter解压后的工作目录);

 

 

 

系统变量PATH新增变量值%JMETER_HOME%\bin

 

 

 添加保存后打开cmd,输入命令:

jmeter -v

  

回车,显示如图

 

 

 

表示环境配置成功。

3.ant下载安装与环境配置

1)下载ant

ant官方历史版本下载地址:https://archive.apache.org/dist/ant/binaries/

说明:如果安装JDK1.8以上,需要下载1.10.X版本。按照对应版本下载即可。

下载后解压到工作目录。

2)环境配置

打开电脑系统【高级环境设置】-【环境变量】,新建系统变量ANT_HOME,变量值E:\ant\apache-ant-1.10.8(ant解压后的工作目录);

 

 

 

系统变量PATH新增变量值%ANT_HOME%\bin和%ANT_HOME%\lib

 

添加保存后打开cmd,输入

ant -v

显示如图

 

 

 

 

 

 表示配置成功。

4.ant配置运行jmeter脚本

1)复制E:\apache-jmeter-5.2.1\extras文件下ant-jmeter-1.1.1.jar文件

并粘贴到E:\ant\apache-ant-1.10.8\lib下

 

 

 

 

 

 2)使用文本打开E:\apache-jmeter-5.2.1\bin下的jmeter.properties文件,把下面的值全部改为true并去掉#,保存退出。

 

 

 

 

 

3)下载测试报告模板

下载地址:http://shanhe.me/2011/06/07/new-xsl-stylesheet-for-jmeter-command-line-results-report

下载后放到E:\apache-jmeter-5.2.1\extras文件夹下即可。

4)新建测试工作目录jmeter_test,在工作目录jmeter_test再建1个文件夹ruselt_log,再建一个build.xml文件,

 

 

ruselt_log下再建两个文件夹,html存放html测试报告,jtl存放jtl文件。

 

 

 

 

build.xml文件代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project name="jmeter_test" default="run" basedir=".">
    <taskdef resource="net/sf/antcontrib/antlib.xml" />
    <tstamp>
        <format property="time" pattern="yyyyMMddkkmm"/>
        <format property="date" pattern="yyyy/MM/dd kk:mm:ss"/>
        <!--kk是24小时制,KK是12小时制-->
    </tstamp>
    <!-- (1)需要改成自己本地的 Jmeter 目录-->
    <property name="jmeter.home" value="E:\apache-jmeter-5.2.1"/>
    <property name="report.title" value="report"/>
    <!-- (2)jmeter生成jtl格式的结果报告的路径-->
    <property name="jmeter.result.jtl.dir" value="E:\jmeter_test\result_log\jtl"/>
    <!-- (3)jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="E:\jmeter_test\result_log\html"/>
    <!-- 生成的报告的前缀 -->
    <!--property name="ReportName" value="接口测试报告"/-->
    <property name="ReportName" value="接口测试报告"/>
    <property name="ReportName2" value="接口测试接口返回情况详情报告" />
    <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"/>
    <property name="jmeter.result.htmlName2" value="${jmeter.result.html.dir}/${ReportName2}${time}.html" />
    <!--项目初始化设置-->
    <target name="init" description="init" >
        <!--删除jtl文件夹下生成的所有文件及文件夹包括空目录,但不删除根目录-->
        <delete verbose="true" includeemptydirs="true" >
            <fileset dir="${jmeter.result.jtl.dir}" >
                <include name="**/*" />
            </fileset>
        </delete>
        <!--删除html文件夹下生成的所有文件及文件夹包括空目录,但不删除根目录-->
        <delete>
            <fileset dir="${jmeter.result.html.dir}">
                <include name="**/*"/>
            </fileset>
        </delete>
        <!--<delete dir="${classes.home}"/><mkdir dir="${classes.home}"/>-->
    </target>
    <target name="run">
        <antcall target="test"/>
        <antcall target="report"/>
        <!--antcall  target="mail"/-->
    </target>
    <target name="test" depends="init">
        <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/>
        <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
            <!-- jmeter接口脚本的存放的路径-->
            <testplans dir="E:\jmeter_test" 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" depends="test">
        <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="titleReport" expression="${report.title}"/>
            <param name="dateReport" expression="${date}"/>
        </xslt> 
        <xslt 
   classpathref="xslt.classpath" 
   force="true" 
   in="${jmeter.result.jtlName}"
   out="${jmeter.result.htmlName2}"
   style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl">
            <param name="titleReport" expression="${report.title}"/>
            <param name="dateReport" expression="${date}"/>
        </xslt>
           
        <copy todir="${jmeter.result.html.dir}">
            <fileset dir="${jmeter.home}/extras">
                <include name="collapse.png"/>
                <include name="expand.png"/>
            </fileset>
        </copy>
    </target>
    <path id="lib_classpath">
        <fileset dir="${basedir}/">
            <include name="mail*.jar" />
            <include name="activation*.jar" />
            <include name="commons-email*.jar" />
            <include name="ant-contrib*.jar" />
        </fileset>
    </path>
    
</project>

5)将jmeter调试好的脚本保存到E:\jmeter_test测试测试目录下,打开cmd,cd到测试工作目录,再输入ant回车

如图:

 

 出现BUILD SUCCESSFUL表示执行用例成功。

测试报告样式截图:

测试报告

 

 接口测试带返回参数

 

posted @ 2022-01-13 18:18  花雨落满楼  阅读(68)  评论(0)    收藏  举报