首先,我们可以选择Jenkins实现性能测试持续集成,具体步骤如下:
一、Performance Plugin安装
方式1.在线安装:系统管理—管理插件–可选插件界面,查找需要安装的插件:Performance Plugin,
勾选后直接安装
备注:使用方式1时候,若遇到插件无法下载的情况,展开Failure信息,找到对应的hpi信息,换一个
国内镜像下载,
如:清华大学镜像地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/
更新镜像地址的路径:系统管理—管理插件–高级—升级站点
方式2.离线安装:下载插件的hpi文件,在Jenkins:系统管理—管理插件–高级–上传插件,直接上传
插件
备注:performance hpi文件路径:https://updates.jenkins.io/download/plugins/performance/
二、性能测试持续集成
1.执行机配置
(1)jmeter.properties文件找到并取消这段配置的注释 server.rmi.ssl.disable=false ,false改成
sh /web/performance/apache-jmeter-4.0/bin/jmeter-server
-Djava.rmi.server.hostname=10.16.244.150
备注:linux启动jmeter server命令为:sh jmeter-server
这里是启动slave上的jmeter服务。如下图出现则启动成功。上面的IP和Port为在调度机
调度机启动代理服务,错误信息:
root@ranxf:/home/ranxf/apache-jmeter-3.1/bin# ./jmeter-server
Writing log file to: /home/ranxf/apache-jmeter-3.1/bin/jmeter-server.log
Created remote object: UnicastServerRef [liveRef: [endpoint:[127.0.1.1:45261](local),objID:[-77439517:162bd0d02af:-7fff, -6895836418342878128]]]
Server failed to start: java.rmi.RemoteException: Cannot start. ranxf is a loopback address.
An error occurred: Cannot start. ranxf is a loopback address.
解决方案:
在jmeter-server加上参数后再次执行:sh /web/performance/apache-jmeter-4.0/bin/jmeter-server
-Djava.rmi.server.hostname=10.16.244.150
2、调度机配置
1)jmeter.properties文件找到并取消这段配置的注释 server.rmi.ssl.disable=false ,false改成true
2)打开jmeter的配置文件后,查找remote_hosts,然后修改为执行机的ip和port,多台执行机中间
若调度机为linux操作系统,选择"执行shell",若调度机为windows操作系统,则选择"执行windows
cd /web/performance/apache-jmeter-4.0/bin
git pull http://gitlab.wumart.com/dmall-scm/wms_performance.git
cd /web/performance
rm -rf report
rm -rf testResult.jtl
/web/performance/apache-jmeter-4.0/bin/jmeter -n -t /web/performance/apache-jmeter-4.0/bin/performancScript.jmx -r -l /web/performance/testResult.jtl -e -o /web/performance/report
注意:测试报告文件夹必须为空或者不存在(不存在会自动创建文件夹然后将测试报表保存其中),
参数为报表文件夹路径
4、增加构建后操作Publish HTML reports
(1)在构建后选择Publish HTML reports插件并配置信息
说明:
HTML directory to archive:测试报告保存路径
index page[s]:可保持默认值
index page title[s]:测试报告页面的命名
Report title:测试报告命名
5、增加构建后操作Publish Performance test result report
说明:
Source data files:性能测试结果文件路径,如上列为调度机为linux操作系统的性能测试结果文件的
路径
1、jmeter.properties,可能会遇到打不开的权限问题:
可以使用:chmod 777 filename 添加权限 ,然后再重新就可以打开了
2、自定义端口:client和server通信的端口,可以不修改,默认就是1099
在slave机的Jmeter的bin目录下,找到jmeter.properties文件,修改如下两个配置项,比如
我这里修改为1888:
server_port=1888
server.rmi.localport=1888