性能测试2【搬代码】

1.性能测试脚本完善以及增强
2.jmeter插件安装以及监控使用
3.性能压测场景设置(基准、负载、压力、稳定性)
4. 无界面压测场景详解

一、性能测试脚本完善以及增强
使用控制器的目的是使我们的脚本更加接近真实的场景
1.逻辑控制器:

【事务控制器】:将几个接口放入事务控制器下面可以将他们的数据平均数相加

事务控制器页面

如果Generate parent sample不勾选,聚合报告会显示事务下的接口数据和独立的事务总和

如果Generate parent sample勾选,聚合报告会仅显示设置事务下接口数据总和

【仅一次控制器】:

如果有10个用户,线程组循环次数=10;聚合报告样本只显示10.

【吞吐量控制器】:

Based

Total Executions:(默认)按百分比分配流量

percent Executions:代表总次数

定时器:

【固定定时器】:

【统一随机定时器】:

【高斯随机定时器】:

3.集合点:

jmeter叫做同步定时器,用于实现并发;位置:线程组-添加-定时器-Synehronising Timer【同步定时器】

达到设置数量后才会发送数据

4.简单的压一压:

线程数:虚拟用户数100

Ramp-UP:多久加载完虚拟用户数。20

循环次数:3

每个接口的总请求:100*3=300个

二、安装插件

安装插件工具jmeter-plugins-manager-1.9.jar

插件下载地址:https://jmeter-plugins.org/downloads/all/

https://jmeter-plugins.org/install/Install/
PerfMon Metrics Collector使用原理:

1.需要在服务器安装一个ServerAgent.zip,用于收集服务器的性能参数。

然后通过4444端口输出

2.在PerfMon Metrics Collector组件中通过4444端口区捕获服务器性能参数。

linux上传ServerAgent.zip
在Linux中进入任意一个目录
cd /xxx 到该目录下
rz 上传包命令
mkdir ServerAgent 创建文件夹
unzip ServerAgent.zip -d ServerAgent 解压ServerAgent.zip到指定文件夹ServerAgent中
cd ServerAgent 进入文件夹
ls  后可以看到startAgent.sh这是Linux中的启动
chmod 777 startAgent.sh 给startAgent.sh一个可执行权限
sh startAgent.sh & 启动startAgent.sh 其中&的意思是在后台运行
当启动后出现Binding TCP to 4444说明服务启动成功
systemctl stop firewalld.service 然后关闭防火墙
然后在jmeter中监听器PerfMon Metrics Collector启用
点击Add Row :Host/ip 输入服务器ip,端口port:4444,在Metric to collect中选择你要看cpu还是内存Memory
然后点击启动蓝色按钮,就可以看到检测服务器的监控图了。
监控图的作用主要是:
1.看趋势,找性能拐点
2.写性能测试报告


三、实际性能压测的场景设置

场景:性能测试用例

1.旧系统来自于运维

2.新系统来自于合理的预估

按场景预估和规矩预估;做OA,总用户10000个,测试打开功能做并发,8:30-9:00打开比较多

按照2/8原则:半个小时并发8000个人,8000/1800=4.44约等于5,最多50并发

一般大部分公司很难超过500.5000以上、1万、十万一定要集群

.

服务器(集群)和压力机(集群)

1.但接口基准测试:使用一个用户测试接口5min。

目的:为了在没有任何压力的情况下:查看各项性能指标。

每个项目关注的数据都是不一样的

cpu内存、网络磁盘、tps响应时间,除了这些还有一些如下图所示:

一般就这些
2.单接口负载测试场景:

(测试计划和方案一般会写在一起,上面是计划下面是方案

测试计划:是人员测试的安排

测试方案:怎么测,关注哪些指标,用什么工具去测。)

通过逐渐的对一个接口进行施压直到出现性能拐点。(这个拐点不是指其中的一块,有可能是CPU的、 中间件、数据库、慢查询锁表等,只要有任何一个地方出现拐点,我们就会把他记录下来,最大的并发量就在这里确定了)获得被测接口的最大处理能力以及相关的性能指标
3.混合负载压测场景;

目的是为了验证整个业务的最大的最右性能提现。终端在于模型的设计。模型来自于数据,来自于生产环境的日志,或者产品经理给的

怎么做:用什么

1.递增式线程组,共进式线程组:用的最多的

2.极限线程组:用来做极限测试或者浪涌测试

压测策略,压测场景,压测用力

This group will start:启动多少个线程数

First,wait for:等待多少秒开始压测,一般为0

Then start;一开始有多少个线程数,一般为0

================================

Next add

threads every

using ramp-up

每多少秒启动多少个虚拟用户数,每组数据持续运行多少秒

=================================

Then hold load for 60:当你把虚拟用户数都加满之后负载运行多久

4-24小时:一般是8小时,可以是4、8、12、24小时用来做持续不断的压力测试

=================================

Finaliy stiop

threads every

每一秒停止5个虚拟用户数。

3.压力测试场景:

验证系统的极限。直到有任何一个性能指标超出预期。

4.稳定性测试场景。

在压力测试下持续运行4-24小时。

五、无界面压测

理论--》指标--》压测脚本--》脚本完善和增强--》模拟真是场景--》压测场景--》监控平台-》平静定位和性能调优

当我们走到压测场景的时候,就开始压测,我们不是使用的jmeter压测,我们使用的是无界面压测

相关推荐
逆旅行天涯5 小时前
【性能优化】如何提升页面加载速度?
性能优化
货拉拉技术11 小时前
你的骨架屏用对了吗?
前端·性能优化·浏览器
JINGWHALE115 小时前
设计模式 结构型 桥接模式(Bridge Pattern)与 常见技术框架应用 解析
前端·人工智能·后端·设计模式·性能优化·系统架构·桥接模式
JINGWHALE117 小时前
设计模式 结构型 组合模式(Composite Pattern)与 常见技术框架应用 解析
前端·人工智能·后端·设计模式·性能优化·系统架构·组合模式
JINGWHALE12 天前
设计模式 结构型 外观模式(Facade Pattern)与 常见技术框架应用 解析
前端·人工智能·后端·设计模式·性能优化·系统架构·外观模式
JINGWHALE12 天前
设计模式 结构型 代理模式(Proxy Pattern)与 常见技术框架应用 解析
前端·人工智能·后端·设计模式·性能优化·系统架构·代理模式
明月看潮生2 天前
青少年编程与数学 02-005 移动Web编程基础 14课题、性能优化
前端·青少年编程·性能优化·编程与数学·移动web
_明川3 天前
Android 性能优化:内存优化(实践篇)
android·性能优化
李宥小哥3 天前
ElasticSearch10-性能优化
运维·性能优化·jenkins
cui_win3 天前
Linux性能优化-系列文章-汇总
linux·网络·安全·性能优化