系统:windows10+jmeter5.0

一、简介

大致思路:Jmeter可以做接口测试,也能做压力测试,而且是开源软件;

Ant是基于Java的构建工具,完成脚本执行并收集结果生成报告,可以跨平台,

Jenkins是持续集成工具。将这三者结合起来可以搭建一套Web HTTP接口测试的持续构 建环境,实现接口自动化测试,pc系统是Windows。

二、安装jdk

1、下载安装包(我使用的是jdk1.8版本,自行下载)
2、配置环境变量
JAVA_HOME 为 C:\Program Files (x86)\Java\jdk1.8.0_152 (注意:java我是默认装的C盘)

CLASSPATH为 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;

PATH为 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

3.安装验证

在命令窗口中输入java -version 回车,能出现java版本则说明配置成功

 jmeter+ant+jenkins接口自动化测试框架_html

 

 

 

三、安装jmeter

1.下载安装包,解压后放在F:\apache-jmeter-5.0
2.配置环境变量

JMETER_HOME 为 F:\apache-jmeter-5.0;(jmeter安装路径)

CLASSPATH为 %JMETER_HOME%\lib;

PATH为%JMETER_HOME%\bin;

3.在命令窗口中输入jmeter -v回车,能出现jmeter版本则说明配置成功

可以直接在命令窗口输入jmeter回车后启动jmeter

 jmeter+ant+jenkins接口自动化测试框架_xml_02

 

 

 

四、安装ant

1、安装包下载
下载地址 http://ant.apache.org/bindownload.cgi

下载后解压到指定位置即可,我是与jmeter放在同一位置F:\apache-jmeter-5.0\apache-ant-1.10.5

 jmeter+ant+jenkins接口自动化测试框架_html_03

 

 

 

jmeter+ant+jenkins接口自动化测试框架_tomcat_04

 

 

 

2.配置环境变量

ANT_HOME 为 F:\apache-jmeter-5.0\apache-ant-1.10.5;(ant解压位置)

CLASSPATH为 %ANT_HOME%\lib;

PATH为%ANT_HOME%\bin;

3.安装验证

验证安装结果,命令行输入ant -v,出现版本信息则安装成功

 jmeter+ant+jenkins接口自动化测试框架_apache_05

 

 

 

五、Ant配置Jmeter

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

1、配置库文件
将jmeter extras目录下的ant-jmeter-1.1.1.jar文件拷贝到ant安装目录下的lib文件夹中

 jmeter+ant+jenkins接口自动化测试框架_java_06

 

 

jmeter+ant+jenkins接口自动化测试框架_tomcat_07

 

 

 

2.配置jmeter.properties文档

找到jmeter.properties文档,在jmeter/bin目录下,打开该文档并编辑,修改jmeter报告输出格式为xml。改jmeter.save.saveservice.output_format=csv 为jmeter.save.saveservice.output_format=xml,并去掉前面的注释符号#

 jmeter+ant+jenkins接口自动化测试框架_xml_08

3.集成准备

新建文件夹,放置将要进行测试的jmx文件和build.xml文件,这里的build.xml文件需要自己新建

 jmeter+ant+jenkins接口自动化测试框架_tomcat_09

新建文件夹,放置jtl格式的结果报告和html格式的结果报告

 jmeter+ant+jenkins接口自动化测试框架_xml_10

 

 

 

4.配置ant的编译文件 build.xml

新建的txt文件,并将此文件改名为build.xml

注意:jmeter的extras文件下也有个build.xml文档,不要用这个文档来改,是两回事,这里的build文档是自己新建。

 jmeter+ant+jenkins接口自动化测试框架_apache_11

生成报告地址与名称,不用修改

 jmeter+ant+jenkins接口自动化测试框架_tomcat_12

报告存放的路径与名称,不用修改

然后把修改完成的build.xml文件,放入集成准备的smokeTest文件夹下

下面是修改后的build.xml文件,都是按照以上内容进行的修改

<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="E:\apache-jmeter-5.0\apache-jmeter-5.0" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="E:\apache-jmeter-5.0\apache-jmeter-5.0\bin\msxf_report\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="E:\apache-jmeter-5.0\apache-jmeter-5.0\bin\msxf_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" />
<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:\apache-jmeter-5.0\apache-jmeter-5.0\bin\msxf" 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">
<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-shanhe-me.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>

 

5.执行测试

命令行cd到build.xml文件所在目录,输入ant run回车,执行测试

看到build successful 则说明构建测试成功

 jmeter+ant+jenkins接口自动化测试框架_xml_13

 

 

 

6.查看测试结果报告

在报告输出存放路径下查看是否有jtl和html结果报告

 jmeter+ant+jenkins接口自动化测试框架_html_14

 

jmeter+ant+jenkins接口自动化测试框架_tomcat_15

 

 

 打开html文档,测试结果展现了执行的用例名称、成功率、用例执行时间等结果参数

 jmeter+ant+jenkins接口自动化测试框架_apache_16

这样的结果是不是不太直观,因为用jmeter自带的测试报告得到的测试报告信息并不是很全,下面讲一下怎么优化测试报告

7.优化测试报告

 

 jmeter+ant+jenkins接口自动化测试框架_tomcat_17

 

 

 jmeter+ant+jenkins接口自动化测试框架_tomcat_18

 

 

 jmeter+ant+jenkins接口自动化测试框架_apache_19

 

 

 再次用ant构建测试,查看优化后的测试报告

 jmeter+ant+jenkins接口自动化测试框架_apache_20

 

 

 

六、Windows安装Jenkins
在安装Jenkins之前,需要安装jdk、配置jdk环境变量、tomcat

1.先安装tomcat
把tomcat下载后,放入D盘。然后进行解压

 jmeter+ant+jenkins接口自动化测试框架_html_21

2.然后下载jenkins.war包,把jenkins.war包放在tomcat\webapps下

 jmeter+ant+jenkins接口自动化测试框架_tomcat_22

3.进入tomcat\bin目录下,启动tomcat

 jmeter+ant+jenkins接口自动化测试框架_apache_23

4.在浏览器输入本地tomcat地址http://127.0.0.1:8080/,出现下面页面,说明tomcat启动成功

 jmeter+ant+jenkins接口自动化测试框架_tomcat_24

5.在浏览器输入本地jenkins地址127.0.0.1:8080/jenkins,出现下面页面,说明jenkins启动成功

 jmeter+ant+jenkins接口自动化测试框架_tomcat_25

6.第一次安装jenkins,需要输入密码,可以在页面上的目录中查找

 jmeter+ant+jenkins接口自动化测试框架_html_26

 

 

 

七、配置Jenkins
1、安装Ant Plugin(Ant插件)和HTML Publisher plugin(HTML发行插件)

Manage Jenkins里面,安装之后,在已安装里查看

 jmeter+ant+jenkins接口自动化测试框架_java_27

2.新建job

 jmeter+ant+jenkins接口自动化测试框架_java_28

 

 

 

3、选择丢弃旧的构建

 jmeter+ant+jenkins接口自动化测试框架_tomcat_29

 

 

 

4.配置构建:Invoke Ant

 jmeter+ant+jenkins接口自动化测试框架_html_30

 

 

 

配置build路径

 jmeter+ant+jenkins接口自动化测试框架_xml_31

 

 

 

5.配置测试报告插件,用于打开测试结果报告

 

jmeter+ant+jenkins接口自动化测试框架_tomcat_32

 

jmeter+ant+jenkins接口自动化测试框架_apache_33

 

 

6、点击构建,执行测试

 jmeter+ant+jenkins接口自动化测试框架_tomcat_34

 

 

7、查看报告

jmeter+ant+jenkins接口自动化测试框架_xml_35