Jmeter+ant+jenkins接口自动化持续集成

大致思路:Jmeter可以做接口测试,也能做压力测试,而且是开源软件;Ant是基于Java的构建工具,完成脚本执行并收集结果生成报告,可以跨平台,Jenkins是持续集成工具。将这三者结合起来可以搭建一套Web HTTP接口测试的持续构建环境,实现接口自动化测试,pc系统是Windows

 

1、安装就jmeter

1.1、下载安装包(过程略过,自己找安装包,随便装在哪个目录下)

1.2、配置环境变量

      JMETER_HOME 为 jemter安装路径;

   CLASSPATH为 %JMETER_HOME%\lib;

  PATH为%JMETER_HOME%\bin;

1.3、安装验证

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

 

jenkins中jmeter的报告_测试报告

 

 

可以直接点击jmeter.jar启动jmeter;也可以在点击jmeter.bat文件之间启动jmeter

配置好环境变量后,可以在dos命令中输入jmeter启动jmeter

 

jenkins中jmeter的报告_Jenkins_02

 

 

1.4、在jmeter上调试通一个接口(如果是多个接口,按照jmeter方法添加即可)

 

2、安装jdk

2.1、下载安装包(我使用的是jdk1.8版本,自行下载)

2.2、配置环境变量

      JAVA_HOME 为 C:\Program Files (x86)\Java\jdk1.8.0_171 (注意:java我是默认装的C盘)

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

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

2.3、安装验证

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

 

jenkins中jmeter的报告_测试报告_03

 

 

 

3、安装Ant

3.1、安装包下载

下载地址 http://ant.apache.org/bindownload.cgi,下载后解压到指定位置即可,我是与jmeter放在同一位置

 

jenkins中jmeter的报告_xml_04

 

 

 

jenkins中jmeter的报告_Jenkins_05

 

 

3.2、配置环境变量

      ANT_HOME 为 ant解压位置

  CLASSPATH为 %ANT_HOME%\lib;

  PATH为%ANT_HOME%\bin;

3.3、安装验证

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

 

jenkins中jmeter的报告_xml_06

 

4、Ant配置Jmeter:用ant构建命令来调动执行jmeter接口测试,并生成测试报告     

4.1、配置库文件

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

4.2、配置ant的编译文件build.xml

新建的txt文件,并将此文件改名为build.xml,修改文档里的内容

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

  代码中不能存在tab键否则会编译失败,要执行的脚本也要指定好,否则也会有问题

按实际情况修改如下文档:

 

jenkins中jmeter的报告_测试报告_07

 

 见其它文章

 

4.4、配置jmeter.propertise文档

找到jmeter.properties文档,在jmeter/bin目录下,打开该文档并编辑,修改jmeter报告输出格式为xml:

改jmeter.save.saveservice.output_format=csv 为jmeter.save.saveservice.output_format=xml,并去掉前面的注释符号#

 

4.5、验证配置,执行构建测试

将之前的jmeter的脚本保存,并将build.xml配置文件放在与测试脚本相同的目录下,我的目录如下:

 

4.5、执行测试

在build.xml所在目录打开命令窗口(鼠标在空白处按下shift键后在右键),

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

 

4.6查看测试报告

在报告输出存放路径下查看是否有jtl和html结果报告,存放路径在build文档中也有

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

 

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

 4.7、优化测试报告

(1)、下载优化模板 jmeter-results-shanhe-me.xsl,拷贝到jmeter的extras目录中

    下载地址:jmeter.results.shanhe.me.xsl

 

(2)、设置测试输出报告要输出的内容:同样在jmeter.properties中,设置需要输出的内容为true,并去掉前面的注释符号#,这里全部设置成true→保存

 

jenkins中jmeter的报告_测试报告_08

 

 

(3)设置build文件的报告模板为优化后的模板jmeter-results-shanhe-me.xsl

 

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

 

5、配置Jenkins,构建持续集成

5.1、下载安装包(安装过程略)

5.2、配置环境变量

JENKINS_HOME 为 C:\Program Files (x86)\Jenkins 环境变量值为jenkins配置好后就会安装到哪个文件夹中

5.3、启动Jenkins

浏览器中输入:http://127.0.0.1:8080/jenkins,打开jenkins,配置用户名、密码及插件,这里选择推荐插件即可

一、创建项目

1.创建一个自由风格的项目

jenkins中jmeter的报告_测试报告_09

 

2.进入此项目

3.构建invoke ant——填写targets:all

jenkins中jmeter的报告_jenkins中jmeter的报告_10

 

填写all的原因

jenkins中jmeter的报告_Jenkins_11

 

4.查找build.xml文件的具体位置

jenkins中jmeter的报告_xml_12

 

5.填入build file

将此位置填入Jenkins——(001)项目——构建——invoke ant——build file,点击保存

jenkins中jmeter的报告_Jenkins_13

 

 

 

6.构建成功,点击运行

 

在首页——all——时钟图标(schedule a build for 001),点击时钟图标。

jenkins中jmeter的报告_测试报告_14

 

7.点击项目名,进入项目页面

jenkins中jmeter的报告_jenkins中jmeter的报告_15

 

8.出现问题查看项目中的控制台,查看出现问题的原因

jenkins中jmeter的报告_jenkins中jmeter的报告_16

 

失败

jenkins中jmeter的报告_测试报告_17

 

二、定时设置,自动运行

1.创建一个自由风格的项目

2. 构建触发器

jenkins中jmeter的报告_测试报告_18

 

 

 

规则:每行包含5个用TAB或空格分隔的字段:* * * * *

分钟、小时、日期、月份、星期

H 任选

* 指定所有有效值

M-N 指定值范围

M-N/X或*/X按X的间隔逐步达到指定范围或整个有效范围

A,B,...,Z 枚举多个值

/ 每隔

jenkins中jmeter的报告_测试报告_19

 


 

例如:1、每隔30分钟执行一次

H/30 * * * *

2、每周一的7点执行一次

H  7 * * 1

3、每周日,每隔4个小时执行一次

H H/4 * * 7

4、1月、3月、4月的,每周日4点执行一次

H 4 * 1,3,4 7

5、每5天执行一次

H H H/5 * *

6.每分钟执行一次

*/1 * * * *

 

 

接口自动化:

 

框架组成:jmeter+ant+jenkins

 

组件:

 

Jdk(下载配置环境变量)

 

Ant(下载解压,配置环境变量)

 

Tomcat(Tomcat服务器运行Jenkins)

 

Jmeter:用来调试脚本(断言、参数化、关联),生成一个jmeter脚本

 

Ant:实现一个自动构建的过程(调取脚本、执行脚本、生成测试报告、发送邮件)

 

Jenkins:实现持续集成,定时跑测试任务