实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

栏目: Java · 发布时间: 7年前

这阶段有幸接手了公司新产品的测试,所以一直都很忙。后台收到一些同学的私信,想多了解下性能测试,正好闲暇之余,终于有时间总结了一些性能测试实践经验和测试过程,就跟大家聊一聊。

性能测试用来保证产品发布后系统的性能满足用户需求,在软件质量保证中起着重要作用。性能测试,我首选的 工具 是JMeter,而且不得不说JMeter也是一款非常好的接口测试工具。

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

Jmeter应用领域

JMeter是Apache组织开发的基于 Java 的性能测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域

1.可用于压力测试及性能测试,数据库测试,Java程序的测试,HTTP及FTP测试,Web Service测试等等

2.可用于对静态的和动态的资源(文件,Servlet,Perl脚本,java 对象,数据库和查询,FTP服务器等等)的性能进行测试

3.可用于对服务器、网络或对象模拟巨大的负载,来在不同压力类别下测试它们的 强度和分析整体性能

4.可用于对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果

Jmeter虽然是一款广泛使用的性能测试工具,然而,在执行测试前,用户往往需要花费很多额外的精力和时间配置测试环境。

同时在进行测试时,使用单台服务器模拟数以千计的用户对目标服务器产生负载,受限于服务器的性能可能无法满足需求,这就需要一个多台服务器的分布式的并发的测试环境。

因此就需要一个基于Jmeter和Jenkins的自动化性能测试来解决以上问题。

框架介绍

首先用jmeter录制或者书写性能测试的脚本,用maven添加相关依赖,把性能测试的代码提交到github,在jenkins配置git下载性能测试的代码,配置运行脚本和测试报告,配置运行失败自动发邮件通知,这样一来性能测试的job配置完成。

接着,把性能测试的job配置成开发job的下游job,一旦开发有了新的代码提交运行开发自己的job后,就会自动触发我们性能测试的job。这样我们就实现了接口性能测试的全自动化,我们只需要关注测试失败的邮件!

1、安装java、maven

首先在远程的压测机上安装java、maven

解压缩相应的tar包

配置/etc/profile路径

Source /etc/profile使配置生效,很简单。

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

2、安装Jenkins

wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key

yum install Jenkins

启动service jenkins start

利用ip:port访问,进入Jenkins首页进行相应配置。

默认端口8080、主目录路径/usr/lib。

3、在Jenkins上新建节点机

节点机即压测机,即你要用哪台机器跑你的job。

首先安装ssh plugin插件;

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

然后新增一个根据用户名密码登录的credentials权限认证

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

最后就是配置节点,主要涉及配置jdk目录。

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

4、Jenkins上安装性能插件

主要是安装HTML reports和performance test result report插件

下载2个Jenkins插件,安装即可。

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

5、新建job

核心的内容如下

选择刚才的节点机为执行的机器,构建行为采用 shell 命令,构建后添加html report和performance trend。

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

6、验证结果

最后的效果如下。

可以看到丰富的html报告结果;

可以横向比较每个版本的性能基线;

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

ps:搭建jmeter性能测试自动化过程中遇到问题记录。

问题:

Jenkins无法展示性能测试的html结果

解决方法:

修改Content Security Policy的默认配置,进入ManageJenkins->Script console,输入如下命令并进行执行。

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建

总结:

截止目前,jmeter+Jenkins性能测试自动化搭建已经完成,如果需要你也可以使用Ant集成。这个过程依然存在很多的不足,我会继续努力争取以后分享更多有价值的干货。古人云"The more we share, the more we have",将分享进行到底...

实用测试技能分享:jmeter+Jenkins性能测试自动化搭建


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

RESTful Web Services Cookbook

RESTful Web Services Cookbook

Subbu Allamaraju / Yahoo Press / 2010-3-11 / USD 39.99

While the REST design philosophy has captured the imagination of web and enterprise developers alike, using this approach to develop real web services is no picnic. This cookbook includes more than 10......一起来看看 《RESTful Web Services Cookbook》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具