vlambda博客
学习文章列表

JENKINS持续集成性能测试环境搭建及使用

1.   CENTOS7配置JDK 8环境


官网下载JDK,修改/etc/profile文件,添加java环境变量。

#java

export JAVA_HOME=/opt/java/jdk1.8.0_181

export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

export PATH=$PATH:${JAVA_HOME}/bin

 

source /etc/profile 使用新增的环境变量生效。

[root@pjenkins ~]# source /etc/profile 

[root@pjenkins ~]# java -version

java version "1.8.0_221"

Java(TM) SE Runtime Environment (build 1.8.0_221-b11)

Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)


2.   配置JENKINS持续集成服务

A.     Linux系统配置jenkins服务

                i.          配置tomcat 8 

官网下载tomcat 8,无需安装,配置JAVA_HOMEJRE_HOME环境变量即可。将tomcat 8.tar.gz安装包上传到/app目录下,解压后,更改名称为apache-tomcat-jenkins-8080-perf,启动tomcat服务:sh /app/apache-tomcat-jenkins-8080-perf/bin/startup.sh,访问http://${IP}:8080,出现tomcat默认页面即为启动成功。

              ii.         配置Jenkins服务

官网下载jenkins.war包并将其上传到/app/apache-tomcat-jenkins-8080-perf/webapps/目录下,将原来的ROOT备份ROOT-tomcat.bak。将jenkins.war修改为ROOT.war。重启tomcat服务,访问http://${IP}:8080,出现jenkins安装页面,按照提示安装。

             iii.         安装Jenkins插件

常用的插件:Git plugin Gradle pluginHTML Publisher pluginMaven Integration pluginPerformance PluginPublish Over SSH…自行安装。

如果网络受限制,无法通过jenkins插件管理安装,可以使用离线包安装,也可以使用我安装好的插件包,

网盘下载链接https://pan.baidu.com/s/10xiEjvwZHDXaqf5fIbFEvg  密码:yvhq

plugins.tar.gz解压到你的安装目录下(一般安装在 ~/.jenkins),替换掉原来的plugins。重启jenkins服务,即可使用这些插件。

3.   配置性能测试环境

A.     配置Jmeter环境

Jmeter不需要安装,需要JDK环境,配置环境变量即可使用。

修改/etc/profile文件,添加jmeter环境变量。

#jmeter environment

export JMETER_HOME=/opt/jmeter/apache-jmeter-4.0

export CLASSPATH=.:${JMETER_HOME}/lib/ext/ApacheJMeter_core.jar:${JMETER_HOME}/lib/jorphan.jar

export PATH=$PATH:${JMETER_HOME}/bin

 

source /etc/profile 使用新增的环境变量生效。jmeter -v验证。

B.     Jenkins性能测试项目

                i.         Jmeter开发性能测试脚本

Gitlub上创建一个项目performance-test.git,用来存放性能测试脚本

git clone http://gitlab.weikeu.com/TestDevelopment/performance-test.git

使用jmeter进行脚本开发,完成后,pushgitlub上。

git status

git add .

git commit -m “this is xxxxxxxxx”

git push

以一个简单的性能测试项目为例:标准化时为了适配以前的接口加入了过滤器,需进行压测,测试改造前后 对同一接口响应时间的影响。

改造后请求urlhttp://${IP}:8080/EsQuery/esquery/zj/qTdUsedPrdDetail

改造前请求urlhttp://${IP}:8081/EsQuery/esquery/zj/qTdUsedPrdDetail

post请求报文:{"productNo":"202030345"}

 

在应用服务器8C8G的测试环境下,改造前后,以不同并发数(1005001000)压测同一接口,本次测试无需对${productNo }参数化。

测试计划中 设置 独立运行每个线程组,使一个线程组运行结束后启动下一个,保存jmeter测试脚本到performanc-test/jmeter-perf/riskdatafront/目录下,并git  pushgitlub上。

JENKINS持续集成性能测试环境搭建及使用

              ii.         Jenkins配置性能测试项目

构建一个自由风格的软件项目,工程名为risk_data_front_FGGZYQ167_FGGZYQ169(应用名称+jira号)。配置项目如下:

JENKINS持续集成性能测试环境搭建及使用

JENKINS持续集成性能测试环境搭建及使用

执行shell说明:

1、删除上一次构建产生的html报告;

2、删除上一次构建产生的压测jtl文件;

3cdjmeter启动文件所在的目录;

4、执行jmeter测试脚本,并生成html测试报告。

 

html报告需要在jenkins脚本命令行里执行以下语句 ,才可以正常显示html报告。System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", ""),每次重启服务器,都需要执行这条语句,否则html报告不显示测试结果。


Html 报告设置,除第一项html报告存放的路径要填写正确外,其他可以自由输入。Keep past HTML reports保留之前的html测试报告。

JENKINS持续集成性能测试环境搭建及使用

Performance 测试结果报告,按下图填写即可。

JENKINS持续集成性能测试环境搭建及使用

 

JENKINS持续集成性能测试环境搭建及使用


             iii.         构建性能测试工程

点击【立即构建】,查看控制台输出。特别注意文件路径,否则会报无权限的错误。

JENKINS持续集成性能测试环境搭建及使用

 

查看html报告(部分截图)。

查看performance测试结果报告(部分截图)。

以上jenkins持续集成性能测试平台部署成功。