jenkins +Jmeter 完成分布式性能测试
1.Jmeter 压测机器配置。
下载Jmeter 版本:https://jmeter.apache.org/download_jmeter.cgi 我下的是5.1.1
将下载后的版本进行解压。
运行 ..\apache-jmeter-5.1.1\bin\jmeter.bat
如果没有安装Java环境会提示安装Java环境
下载Jave版本: https://www.java.com/en/download/win10.jsp
Jmeter 5.1.1 版本要求Jave 8 +,所以需要安装Jave 8以上的版本。
安装后Java 环境后再次运行 Jmeter.bat 就可以打开Jmeter GUI 界面了。如下:
2.Jmeter 分布式远程执行机器配置
运行 Jemter-Server.bat
如果出现如下错误,是因为没有找到 rmi_keystore.jks 文件,默认远程链接是需要通过ssl 通道的。
如果对于安全级别没有要求,则可以设定不需要通过SSL连接远程Server。
需要修改jmeter.properties 文件,将server.rmi.ssl.disable=true
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
如下:
这样执行 Jmeter-server.bat 就不会出现错误了。
3.配置控制机器
远程机器配置好之后,在控制机器上进行设置:
修改jmeter.properties 文件,找到 Remote hosts and RMI configuration 段,在remote_hosts 后面添加远程执行机
# Remote hosts and RMI configuration
#---------------------------------------------------------------------------
# Remote Hosts - comma delimited
#remote_hosts=127.0.0.1
remote_hosts=jp-lsr-montage:1099,Montage-t2-ck:1099,montage-test3:1099
上述配置完成后,在控制机器上启动Jmeter.bat进行测试。
选择一个项目,使用run->Remote Start 中的远程机器,一台一台测试看执行机器是否就绪。
如果执行机器正常运行,我们的Jmeter 部分就配置好了。
4.Jenkins 配置
1. 新建一个Freestyle project 项目。
2. 配置Office 365 Connector Tab
2.1 选择 This project is parameterized
设置 num_threads 和 filename 变量。
2.2选择 Restict where this project can be run
设置脚本运行的机器,对于我们来书就是控制机器名称 .我使用了 jp-lsr-montage 机器。
需要将这个机器配置为Jenkins Agent。
3. 配置Build
我们上面配置了连个build 参数,它们的使用地方就在Build 的命令中,通过这两个参数我们可以在每次build 的时候来指定运行文件和线程数。
对于windows batch command 参数格式:%branch% linux shell:$branch git 引用参数:${branch}
通过上面的设置可以将Build 参数传递给Jmeter 命令行,要在Jmeter 运行时从命令行读取参数,还需要修改Jmeter 工程文件。
如下:在需要使用变量的地方通过 ${__P(num_threads,1)} 来读取命令行中的变量。
通过命令行传递参数
-G, --globalproperty (argument)[=(value)]
发送给server的全局属性,可以把属性及值填入global.properties,之后使用-Gglobal.properties
例子: jmeter -n -t c:\Jmeter\montage\EventApply.jmx -o result -l result.jtl -e -r -Gnum_threads=3
Jmeter 界面的设置:
4.配置Post-Build Actions
需要安装HTML Publisher插件。
配置Publish HTML reports
再安装一个插件performance
配置 Publish Performance test result report
5.Jenkins Agent 配置
我们在2.2 中使用 jp-lsr-montage这个Agent , 那么如何配置Agent 呢?
Jenkins -->Mange Jenkins --> Mange Nodes
选择New node
、
进行如下配置,并保存:
2.登录jp-lsr-montage 机器,访问Jenkins 服务器。
选择 Agent jp-lsr-montage ,选择launch ,这样就配置好 jp-lsr-montage Agent了。
如果担心Agent机器重启后Agent 离线,可以考虑将Agent 安装为 Windows Service。 具体安装方法可以参考Jenkins Agent 配置。
jenkins +Jmeter 完成分布式性能测试的更多相关文章
- 转:Jmeter进行分布式性能测试
由于Jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起JAVA内存溢出的错误.要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 ...
- 【jmeter】Jmeter进行分布式性能测试
由于Jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起JAVA内存溢出的错误.要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 ...
- Jmeter进行分布式性能测试
由于Jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起JAVA内存溢出的错误.要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 ...
- JMeter JMeter远程分布式联机性能测试
JMeter远程分布式联机性能测试 by:授客 QQ:1033553122 测试环境 apache-jmeter-2.13 Java JDK版本:1.8 1. JMeter分布式测试简介 当一个 ...
- jmeter -分布式性能测试部署
------------------运行环境:------------------------------------------------- 1. 安装java运行环境:要求jdk1.8(最好安装 ...
- JMeter远程分布式联机性能测试
测试环境 apache-jmeter-2.13 Java JDK版本:1.8 1. JMeter分布式测试简介 当一个JMeter客户端因网络限制等因素,无法模拟足够的用户对服务器施压时,需要用到J ...
- 转 15 jmeter分布式性能测试
15 jmeter分布式性能测试 背景由于jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起Java内存溢出的错误.要解决这个问题, ...
- jenkins+jmeter+ant搭建接口测试平台
接口测试的重点是检查数据的交换,传递和控制管理过程以及系统间的相互逻辑依赖关系. 接口测试的流程 项目启动后,测试人员要尽早拿到接口测试文档. 开始编写接口测试用例 将接口测试用例部署到持续集成的测试 ...
- jmeter的分布式部署
在使用Jmeter进行性能测试时,如果并发数比较大(比如5000+并发),单台电脑的配置(CPU和内存)可能无法支持(公司配的联想e450家庭用笔记本一般到1000就会卡死),这时可以使用Jmeter ...
随机推荐
- CentOS 如何删除/delete/remove 老的 kernel
package-cleanup --oldkernels --count=1
- configure -help
http://www.360doc.com/content/14/1215/17/18578054_433158382.shtml http://blog.csdn.net/mociml/articl ...
- sentinel 滑动窗口统计机制
sentinel的滑动窗口统计机制就是根据当前时间,获取对应的时间窗口,并更新该时间窗口中的各项统计指标(pass/block/rt等),这些指标被用来进行后续判断,比如限流.降级等:随着时间的推移, ...
- Spring Boot2(一):使用Spring Boot2集成Mybatis基础搭建
Mybatis 初期使用比较麻烦,需要各种配置文件.实体类.Dao 层映射关联.还有一大推其它配置.mybatis-spring-boot-starter 就是 Spring Boot+ Mybati ...
- Electron构建一个文件浏览器应用(一)
在window.mac.linux系统中,他们都有一个共同之处就是以文件夹的形式来组织文件的.并且都有各自的组织方式,以及都有如何查询和显示哪些文件给用户的方法.那么从现在开始我们来学习下如何使用El ...
- ZooKeeper —— 单机环境和集群环境搭建
一.单机环境搭建 1.1 下载 下载对应版本Zookeeper,这里我下载的版本3.4.14.官方下载地址:https://archive.apache.org/dist/zookeeper/ # w ...
- laravel-admin(自定义表单与验证)
场景: 很多时候,由于我们业务场景比较特殊,需要自定义表单,然后框架给我提供了对应表单组建! 案列:以创建一个字段为列 1.在控制器对应的方法中调用表单组建创建表单 public function c ...
- Fastjson的SerializerFeature序列化属性
Fastjson的SerializerFeature序列化属性 fastJson在key的value为null时,默认是不显示出这个字段的 JSONObject.toJSONString(Object ...
- 跟我学SpringCloud | 第四篇:熔断器Hystrix
跟我学SpringCloud | 第四篇:熔断器Hystrix 1. 熔断器 服务雪崩 在正常的微服务架构体系下,一个业务很少有只需要调用一个服务就可以返回数据的情况,这种比较常见的是出现在demo中 ...
- throw 与 throws的比较
说实话,今天在公司的实习,确确实实编号被严重打脸了,说真的,自己的基础功不扎实,希望慢慢弥补吧! 抛出异常有三种形式,一是throw,一个throws,还有一种系统自动抛异常,下面它们之间的异同. 一 ...