高手的存在,就是让服务10亿人的时候,你感觉只是为你一个人服务......

jenkins+maven+jmeter 性能自动化实践

目录
  1. 1. 整个环境搭建过程:
  2. 2. 第一步:新建maven项目
  3. 3. 第二步,搭建jenkins
  4. 4. 第三步:将项目放在jenkins中构建
  5. 5. 第四步:测试结果展示

先简单介绍这几个工具,其实都不陌生了,平时工作中都会接触到
jenkins:前身hudson,开源的CI服务器
maven:这里主要是要用到maven与jmeter集成的插件(jmeter-maven-plugin)
jmeter:java编写的apache下开源的性能测试工具

整个环境搭建过程:

  1. 新建maven工程,在pom中加入jmeter的插件,将jmeter脚本放入项目中,测试
  2. 搭建jenkins(这里使用的linux环境 centos5.8)
  3. 将maven项目配置在jenkins中
  4. 在jenkins中集成jmeter结果展示的插件(Performance),进行jenkins构建,测试

第一步:新建maven项目

1.新建maven项目,在pom中加入jmeter-maven-plugin插件(由于jmeter-maven插件运行时会自动引入jmeter所需要的类库,所以机器上可以不单独安装jmeter)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<build>
<plugins>
<plugin>
<groupId>com.lazerycode.jmeter</groupId>
<artifactId>jmeter-maven-plugin</artifactId>
<version>1.10.1</version>
<executions>
<execution>
<id>jmeter-tests</id>
<phase>verify</phase>
<goals>
<goal>jmeter</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

2.在项目中新建source Folder:src/test/jmeter,因为插件中指定在此目录下面查找jmeter脚本来执行,如果想更改路径的话,在pom中自己配置
Alt text

3.在Command Line Shell中执行:mvn verify或者mvn jmeter:jmeter,这样jmeter的脚本运行了。
Alt text

这里的jmeter脚本比较简单,就是打开一个页面,10个并发,我们可以看下执行结果,确实是按照我们的设置运行了。

Alt text

以上,我们集成Jmeter插件的maven项目就OK了。


第二步,搭建jenkins

我是linux环境下安装的(下载地址: jenkins.war 和它常用的插件jenkins_plugin)(先下载performance,后面会用),jenkins启动直接采用java -jar,用nginx进行访问代理
1.将jenkins.war放入服务器上

  1. 直接命令(java的版本需要jdk1.7+):java -jar jenkins.war,jenkins就启动了,默认端口8080,也可以指定端口启动:加入启动参数 –httpPort=$HTTP_PORT(设置端口),–httpsPort=$HTTP_PORT(便是使用https协议);当然完全可以搭建在 tomcat或者resin服务器中。
    Alt text

3.启动完,我们可以访问jenkins了,输入ip:端口
Alt text
4.使用nginx代理访问jenkins,这一步可以不要,主要是我想用域名方式访问。我们在nginx中简单配置下就可以了:
Alt text
Alt text
以上,jenkins搭建完成了,比较简单。


第三步:将项目放在jenkins中构建

我这里实现的很简单,直接调用的服务器上的脚本运行的;而且本人对jenkins的配置刚开始了解,不太懂,关于项目配置大家可以具体学习下,网上资料比较多。
1.开始之前,需要在jenkins中加入上面下载的插件,在jenkins的插件管理中上传就可以了。
2.新建一个项目(我这里新建的构建一个自由风格的软件项目),直接运行服务器上的脚本
Alt text
脚本中实现如下:
Alt text

1
2
3
4
5
6
7
8
9
10
export LANG=en_US
export LC_ALL=en_US
export JAVA_HOME=/opt/jdk1.7.0_40/
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export MAVEN_HOME=/opt/apache-maven-3.0.4/
export PATH=$JAVA_HOME/bin:${MAVEN_HOME}/bin:$PATH
export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=512m"

cd /app/maven_jmeter/
/opt/apache-maven-3.0.4/bin/mvn -s /opt/apache-maven-3.0.4/conf/voen_setting.xml jmeter:jmeter

以上,jenkins的项目构建结束。


第四步:测试结果展示

测试的结果怎样在jenkins中显示呢?这里需要performance插件(上面svn中有)
1.我们先来看下结果放在哪
Alt text
2.在jenkins中加入publish perfoemance test result resport
Alt text
3.我们进行构建,看下结果
Alt text
这里展现的结果可以做优化,并且可以集成邮件功能
以上,整个实践结束,整体还是比较简单的。