700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【接口测试】Jmeter+ant安装及简单使用教程(集成)

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

时间:2021-03-28 07:14:28

相关推荐

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

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

一、安装JDK

Jmeter是基于Java的测试工具,ant也是基于java的,所以在安装这两个之前,需要先安装JDK,我下载的是1.8版本的,安装JDK后需要配置环境变量。因为此前已经安装好了JDK,所以这边就不放JDK安装过程(自行查找其他博文)。

JDK安装完成后,打开CMD,输入java -version查询JDK的版本。

出现Java版本则说明配置成功

二、安装Jmeter

2.1 下载安装包

此处给出下载官网链接:

Jmeter下载链接(可直接点击)

/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-/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下载地址(可直接点击)

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

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

开头处encoding="GB2312"不能改成UTF-8格式,会报错。

可以选择给生成的测试报告加上执行时间,只需要在生成的报告名称后面加上${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,如果侵权记得联系我删除。)(/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运行后生成的测试报告如下,这个报告显示信息较全:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。