比如某新兴业务处于上升阶段,需要在每个版本中,对某些新增接口进行性能测试,有时还需要在一天中的不同时段分别进行性能测试,如果一味地采取手动触发的方式,当接口数较多时,就会出现大量重复工作。

这个时候我们应该思考,是否有一种方法,可以定时、批量运行已经设计好的Jmeter脚本,并自动输出测试报告。下面就结合Jenkins+Ant+Jmeter,介绍一种性能测试自动化框架的搭建方法。

自动化框架搭建的思路:

思路:

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

Ant是基于Java的构建工具,可以跨平台;

Jenkins是持续集成工具。

将这三者结合起来可以搭建一套Web HTTP接口性能测试的持续构建环境,实现性能测试自动化。

搭建步骤:

1、在Jmeter主机上安装Ant,Ant用来构建,构建Jmeter的执行、报告的生成等任务;

2、通过Jenkins进行调度Ant,构建测试。测试执行完成后,再通过Jenkins调用Ant生成报告。

下面将分别介绍这两个步骤。

jmeter+Ant集成:

1、引入Apache Ant

Apache Ant是由Apache软件基金会提供的一个将软件编译、测试、部署等步骤联系在一起的自动化工具,由Java语言开发,所以支持跨平台。

2、Apache Ant的特点

Ant 是最完整的基于 Java 语言开发的构建和部署工具;

Apache Ant构建是通过XML文件来定义的,Ant通过解析这个XML文件,调用target树来执行各种任务;

Ant 擅长自动完成重复任务;

3、Apache Ant构建测试计划

Apache Ant的安装及环境配置大家可自行Google,在此不赘述。构建方法如下。

步骤一:构建Jmeter测试计划。

android jenkins自动化测试 jenkins自动化测试框架_Jenkins

步骤二:将/apache-jmeter-3.1/extras目录下的ant-jmeter-1.1.1.jar文件copy到Ant所在/apache-ant-1.9.14/lib目录下。

步骤三:修改Jmeter的配置文件。

(1)修改原因:

Jmeter执行结果文件默认保存的不是xml格式,无法转化成html格式;

Jmeter执行结果文件中很多数据不保存,但是我们需要在测试报告中体现;

(2)配置文件路径:

/apache-jmeter-3.1/bin/jmeter.properties

(3)修改方法如下图所示:

android jenkins自动化测试 jenkins自动化测试框架_apache_02

步骤四:修改Ant中的配置文件build.xml。

Ant采用xml格式建立构建文件,默认名称是build.xml。原始的build.xml文件路径为:/apache-jmeter-5.1.1/extras。

修改完成,将build.xml文件与Jmeter脚本放在同一个路径下面。

修改方法如下:

 

4、批量执行Jmeter脚本

进入jmx脚本目录,执行Ant。进入reports目录查看生成的测试报告:

android jenkins自动化测试 jenkins自动化测试框架_Jenkins_03

jmeter测试报告导出方法:

基本操作:

在脚本文件路径下,执行cmd命令:jmeter -n -t 【Jmx脚本位置】-l 【中间文件
result.jtl位置】-e -o 【报告指定文件夹】,例如:

jmeter安装目录:E:\Jmeter\apache-jmeter\apache-jmeter\apache-jmeter-
3.1\bin
cmd执行脚本:jmeter -n -t E:\Jmeter\apache-jmeter\apache-jmeter\apache-
jmeter-3.1\bin\dlxxw.jmx -l result.jtl -e -o E:\Jmeter\apache-
jmeter\apache-jmeter\apache-jmeter-3.1\bin\result-report

 Jenkins+Ant:

1、搭建Jenkins

Jenkins的安装及配置可自行Google。下面步骤为Jenkins调度Ant进行构建的方法。

步骤一:下载所需插件。例如:Performance plugin、HTML Publisher plugin、Ant Plugin 等。

步骤二:配置中添加Jmeter插件:Performance plugin、HTML Publisher plugin。

android jenkins自动化测试 jenkins自动化测试框架_Apache_04

 

 

android jenkins自动化测试 jenkins自动化测试框架_Apache_05

 

 

功能:展示Jmeter执行结果。

步骤三:配置中 添加 Ant插件:Ant Plugin。

功能:用来执行Ant

android jenkins自动化测试 jenkins自动化测试框架_Jenkins_06

 

 

2、修改build.xml文件

修改build.xml文件生成jtl和html文件的目录到Jenkins的工作目录下。

android jenkins自动化测试 jenkins自动化测试框架_apache_07

3、项目构建

配置好上述文件及目录,点击立即构建,就可以调用Ant自动执行Jmeter脚本了。

 

android jenkins自动化测试 jenkins自动化测试框架_Apache_08

 

 性能测试结果:

进入html目录查看生成的测试报告。可以看到,报告中给出了样本数、错误率、最大和最小响应时间,并给出出错请求的具体情况,对于接口的性能有一个大概的了解。

结束语:

当然,目前使用的报告模板中不包含QPS,且性能结果图表较少,可以通过修改build.xml文件扩展输出报告的内容及格式。同时,可以在Jenkins中配置定时自动执行及报告的邮件自动发送,大大扩展的工具。

android jenkins自动化测试 jenkins自动化测试框架_apache_09