【接口测试】Jmeter+ant安装及简单使用教程(集成)

Jmeter主要进行压力测试,但是也可进行接口测试。我目前只接触到接口测试,在此就只介绍接口测试的相关内容。

一、安装JDK

Jmeter是基于Java的测试工具,ant也是基于java的,所以在安装这两个之前,需要先安装JDK,我下载的是1.8版本的,安装JDK后需要配置环境变量。因为此前已经安装好了JDK,所以这边就不放JDK安装过程(自行查找其他博文)。
JDK安装完成后,打开CMD,输入java -version查询JDK的版本。
在这里插入图片描述
出现Java版本则说明配置成功
在这里插入图片描述

二、安装Jmeter

2.1 下载安装包

此处给出下载官网链接:
Jmeter下载链接(可直接点击)
http://jmeter.apache.org/download_jmeter.cgi
.tgz对应的为linux环境的下载版本。.zip的为Windows的下载版本。
在这里插入图片描述
(我是windows)选择zip压缩包文件,下载到本地目录并直接进行解压缩。
在这里插入图片描述

2.2 配置环境变量

“计算机”右击“属性”。
在这里插入图片描述
选择“高级系统设置”打开如图所示界面,选择“高级”-“环境变量”,进行环境变量的配置。
在这里插入图片描述
新建系统变量,JMETER_HOME,变量值填写Jmeter的安装路径。(根据自己实际安装路径进行填写)
在这里插入图片描述
打开环境变量path,将Jmeter安装路径/bin加入path中。(如果直接通过bin目录执行jmeter.bat,则不需要配置环境变量)。除了直接路径,也可以使用%JMETER_HOME%\bin来进行配置path。
在这里插入图片描述

2.3 安装验证

设置完成后打开CMD,输入jmeter -v得到如下所示结果则配置成功。(如果未配置环境变量,则此处Jmeter语句不会正常执行)。
PS:在这边提醒一下,JDK的path我放在了最开头,如果我把JDK的path放在后面,则我的Jmeter会报错,可能是因为我电脑曾经安装过两个版本的JDK。
在这里插入图片描述
打开Jmeter安装路径,打开bin目录,在bin目录下找到jmeter.bat并进行执行。
(此处注意,如果直接通过bin目录执行jmeter.bat,则不需要配置环境变量)
在这里插入图片描述
在这里插入图片描述
继续等待。(这个命令窗口不可操作,且当前Jmeter运行时不可操作。)
在这里插入图片描述
出现这个界面则Jmeter正式安装完成。
在这里插入图片描述

2.4 插件安装

plugins-manager是Jmeter的插件管理器,避免手动安装插件的繁琐,可以安装一下。
安装插件链接
插件安装链接(可直接点击)
https://jmeter-plugins.org/install/Install/
把下载好的jar包放在Jmeter路径下的/lib/ext目录下。
在这里插入图片描述

2.5 一些其他问题

2.5.1 语言切换

一般觉得英文不习惯的话,可以进入options下选择语言进行切换成简体中文,但是此操作只有当次有效,下一次打开Jmeter还是会变成英文。
在这里插入图片描述
一劳永逸的方法:
打开jmeter安装路径的bin目录,找到jmeter.properties文件,修改语言为zh_CN并且将#去掉
在这里插入图片描述

2.5.2 解决乱码

这边扩展一下知识,如果不更改一些属性的话,则Jmeter查看报告时可能出现乱码,所以接下来修改一下Jmeter的默认编码。
打开bin目录,找到jmeter.properties文件。
在这里插入图片描述
编辑该属性文件,找到sampler的编码设置代码,修改编码为“UTF-8”并去掉注释符号#,保存设置并重启Jmeter即可。
在这里插入图片描述

三、安装ant

3.1 安装包下载

ant下载地址(可直接点击)
http://ant.apache.org/bindownload.cgi
下载zip文件并进行解压缩(我把下载文件放在了和Jmeter同一个路径下)
在这里插入图片描述
在这里插入图片描述

3.2 配置环境变量

设置ant环境变量(此处为我的安装路径)
ANT_HOME=E:\Jmeter\apache-ant-1.10.9;
CLASSPATH=E:\Jmeter\apache-ant-1.10.9;
Path=E:\Jmeter\apache-ant-1.10.9\bin;
(也可以Path=%ANT_HOME%\bin;)
在这里插入图片描述

3.3 安装验证

在CMD下输入ant后,显示build.xml does not exist!则表明成功(因为此时还没有配置build.xml文件)。随后用ant -version可用来验证版本。
在这里插入图片描述

3.4 ant配置Jmeter

用ant构建命令来调动执行jmeter接口测试,并生成测试报告。

3.4.1 配置库文件

将Jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝到ant安装目录的lib目录下。
在这里插入图片描述
在这里插入图片描述

3.4.2 构建配置脚本,配置ant的编译文件build.xml

在Jmeter目录下新建一个文件夹TestSuite(名字随意,但后面需要用到),在TestSuite下新建文件夹命名为report用于后续放测试报告。
将Jmeter extras目录下的build.xml文件复制一份到TestSuite中并修改文档中内容。
在这里插入图片描述

按实际情况修改如下文档(可全部复制过去,再修改相应部分内容即可):

<?xml version="1.0" encoding="GB2312"?>
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="MM-dd-hh" />
</tstamp>
    <!-- 需要改成自己本地的 Jmeter 目录-->  
    <property name="jmeter.home" value="E:\Jmeter\apache-jmeter-5.3" />
    <property name="report.title" value="测试报告"/>
    <!-- jmeter生成jtl格式的结果报告的路径--> 
    <property name="jmeter.result.jtl.dir" value="E:\Jmeter\apache-jmeter-5.3\TestSuite\report" />
    <!-- jmeter生成html格式的结果报告的路径-->
    <property name="jmeter.result.html.dir" value="E:\Jmeter\apache-jmeter-5.3\TestSuite\report" />
    <!-- 生成的报告的前缀-->  
    <property name="ReportName" value="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="run">
        <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="E:\Jmeter\apache-jmeter-5.3\TestSuite" includes="test.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">
        <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}"/>
              <param name="titleReport" expression="${report.title}:${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>

提出几个容易错误的地方:

  1. 开头处encoding="GB2312"不能改成UTF-8格式,会报错。
    在这里插入图片描述
  2. 可以选择给生成的测试报告加上执行时间,只需要在生成的报告名称后面加上${time}(上面代码已经包括,只需了解,不要额外添加)。
<tstamp>
<format property="time" pattern="MM-dd-hh" />
</tstamp>
    <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" />
3.4.3 配置Jmeter.properties文档

找到jmeter.properties文档,在jmeter/bin目录下,打开该文档并进行编辑,修改jmeter输出报告格式为xml:
在这里插入图片描述
在这里插入图片描述

3.4.4 验证配置,执行构建测试

将之前的Jmeter的脚本保存,并将build.xml配置文件放在与测试脚本相同的目录下,我的目录如下:
在这里插入图片描述

3.4.5 执行测试

在CMD中通过cd 命令进入build.xml所在目录,输入ant 并回车,执行测试。
在这里插入图片描述

3.4.6 查看测试报告

在报告输出路径下查看是否有jtl和hmtl结果报告,存放路径在build文档中有涉及。
打开html文档,测试结果展示了执行的用例名称,成功率,用例执行时间等结果参数。
在这里插入图片描述
在这里插入图片描述

3.4.7 其他问题解决方法

测试报告中三个指标都为NaN,解决方法为,从Jmeter的lib包下把xalan-2.7.2.jar 和serializer-2.7.2.jar拷贝到ant的lib包下面。
在这里插入图片描述
在这里插入图片描述
至此,Jmeter+ant的集成步骤已经完毕,还有Jenkins部分我还需要再学习。以后再更。

3.5 测试报告优化

正常情况下,自带的测试报告模板显示不完备,在这边提供一下别人开发的xsl文件。下面提供我下载的这个文件。()
下载链接:jmeter.results.shanhe.me.xsl
(应该是免费的,我设置0,如果侵权记得联系我删除。)(https://download.csdn.net/download/Penguin_zlh/13111052)
将下载的jmeter.results.shanhe.me.xsl文件放在Jmeter下的extras文件夹下。
在这里插入图片描述
在build.xml文件下,修改执行的模板路径,将jmeter-results-detail-report_21.xsl改为jmeter.results.shanhe.me.xsl
在这里插入图片描述

ant运行后生成的测试报告如下,这个报告显示信息较全:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值