负载测试和压力测试有何区别?资深测试老鸟总结,一篇搞定..._负载测试和压力测试的区别-程序员宅基地

技术标签: jmeter性能测试  负载测试  性能测试  压力测试  软件测试  


前言

负载与压力测试

1、负载测试:是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试;

2、压力测试:是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。

例子分析1:
登录接口,我们先10个用户访问,然后100个用户访问,然后1000个用户访问,关注程序的响应时间,所耗资源,直到超时或关键资源耗尽。

压力测试:是指程序长时间运行的稳定性。

例子分析2:
程序,在运行1天,1个月,一年关注他们的各项指标是否都在正常指标内,是否会内存溢出,是否出现功能性故障等等。

压力测试分为稳定性测试和破坏性测试。

负载/压力的区别

负载测试是不关注稳定性的,压力测试是关注稳定性的。
性能测试中负载测试,压力测试有什么区别?

对于性能测试,负载测试,压力测试的区别,之前总自认为是清楚的,后来被人问住了,才发现还差的远。这儿网上摘了一些内容,加上自己的理解,算是弄清楚了吧。特此记下,避免忘了。如有错误之处,还望指正。

性能测试(或称多用户并发性能测试)、负载测试、强度测试、容量测试是性能测试领域里的几个方面,但是概念很容易混淆。

性能测试(Performance Test):通常收集所有和测试有关的所有性能,被不同人在不同场合下进行使用,关注点:how much和how fast。

1、负载测试(Load Test):负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担,关注点:how much。

2、压力测试(Stress Test): 压力测试(又叫强度测试)也是一种性能测试,它在系统资源特别低的情况下软件系统运行情况,目的是找到系统在哪里失效以及如何失效的地方。

3、极限测试 Extreme testing:在过量用户下的负载测试 Hammer testing:连续执行所有能做的操作。

4、容量测试(Volume Test):确定系统可处理同时在线的最大用户数 关注点:how much(而不是how fast) 容量测试,通常和数据库有关,容量和负载的区别在于:容量关注的是大容量,而不需要关注使用中的实际表现。

可能大家觉得性能测试、负载测试和强度测试比较混淆。
没错,这三个概念是比较容易使人糊涂。负载测试和压力测试,都属于性能测试的子集。

性能测试,表示在一个给定的基准下,能执行的最好情况。
负载测试,也是性能测试,但是他是在不同的负载下的。
压力测试,是在较高强度情况下的性能测试。

性能测试是动力,负载测试载重,压力测试强度。

压力测试stress test:是在一定的『负荷条件』下,长时间连续运行系统给系统性能造成的影响。
负载测试Load test:在一定的『工作负荷』下,给系统造成的负荷及系统响应的时间。

这儿我加了括号强调一下压力测试与负载测试的区别。

负载测试通常描述一种特定类型的压力测试——逐步增加用户数量或用户请求来对系统(程序)进行加压。比如现实中有个系统提供在线查询服务,那我们从比较小的负载开始,逐渐增加模拟查询请求的数量或用户量, 直到系统响应时间超时,就是说的负载测试。这儿加压的类型必须是应用提供的服务类型,也就是工作负荷。

负载测试的目标是测试在一定负载情况下的系统性能(不关注稳定性,也就是说不关注长时间运行,只是得到不同负载下相关性能指标即可);

实际中我们常从比较小的负载开始,逐渐增加模拟用户的数量(增加负载), 观察不同负载下应用程序响应时间、所耗资源,直到超时或关键资源耗尽,这就是所说的负载测试,它是测试系统的不同负载情况下的性能指标。

压力测试的目标是测试在一定的负载下系统长时间运行的稳定性,但是这个负载不一定是应用系统本身造成的。比如我们经常利用脚本或工具事先吃掉服务器的一部分cpu、内存或带宽等,创造出一定的负载环境并测试被测应用系统在此环境下的事物处理能力,响应时间等等。

压力测试尤其关注大业务量情况下长时间运行系统性能的变化(例如是否反应变慢、是否会内存泄漏导致系统逐渐崩溃、是否能恢复);

压力测试是测试系统的限制和故障恢复能力,它包括两种情况:

1、稳定性压力测试:在选定的压力值下,长时间持续运行。通过这类压力测试,可以考察各项性能指标是否在指定范围内,有无内存泄漏、有无功能性故障等;

2、破坏性压力测试:在稳定性压力测试中可能会出现一些问题,如系统性能明显降低,但很难暴露出其真实的原因。通过破坏性不断加压的手段,往往能快速造成系统的崩溃或让问题明显的暴露出来。

通透点解释:
这儿有个服务员,对应咱们的应用系统吧。
压力测试就是给这位服务器外部压力,比如长时间不让他休息,不给开工资等,看看服务员会不会开小差(无法及时响应请求),或者罢工(宕机)之类的。

负载测试就是在单位时间内逐步加大这位服务员的工作量,看看此服务员在不同的工作量下完成服务的速度和质量,从而了解到该服务员的工作能力。

压力测试和负载测试能够帮组我们了解到一个服务器的抗压能力和工作能力,当然也能帮我们评估一个系统或软件的性能瓶颈与质量。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有拥有坚定的决心和不懈的努力,才能实现梦想。路漫漫其修远兮,吾将上下而求索。让失败成为你前行的垫脚石,让奋斗成为你翱翔的翅膀。不忘初心,方得始终,相信自己,愿你在奋斗中收获成功的果实。

只有勇往直前,才能让生活更精彩。坚持不懈,付出就会有回报。不要放弃自己的梦想,因为你能比你想象的更加优秀。每一步都是跨越成功的里程碑,努力奋斗,实现未来的目标!

每一次的尝试都是一种成长,每一次的失败都是一种经验。只要坚持不懈,勇往直前,就一定能够迎来成功的喜悦和荣耀。所以让我们一起努力奋斗,为实现自己的梦想而不懈努力!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_70102063/article/details/131329340

智能推荐

Windows系统diskpart删除U盘分区_windows cmd删除u盘分区-程序员宅基地

文章浏览阅读3.3k次,点赞2次,收藏5次。描述有些清空下,比如U盘制作Ubuntu18.04的桌面镜像事,U盘会因为文件系统写入问题变成2MB左右。回复的话需要重新分区。微软Windows提供了diskpart管理磁盘的工具,基本简单好用方法已管理员打开cmd,执行diskpart命令,进入diskpart键入list disk查看磁盘列表选择U盘(磁盘号),删除分区磁盘管理工具为U盘新建分区,即可解..._windows cmd删除u盘分区

Duwamish7资料收集_duwamish7论文-程序员宅基地

文章浏览阅读333次。Duwamish7资料收集Duwamish深入剖析-结构篇:http://www.cnblogs.com/qiuyun/archive/2007/09/18/897815.html Duwamish架构分析篇:http://hi.baidu.com/wanglianbin/blog/item/c8f26e60a0c6e344eaf8f8a8.html_duwamish7论文

物料分类新增&更新_inv_item_category_pub.create_category-程序员宅基地

文章浏览阅读2.4k次。--新增INV_ITEM_CATEGORY_PUB.Create_Category ( p_api_version IN NUMBER, p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE, p_commit IN VARCHAR2 DEFAULT FND_API.G__inv_item_category_pub.create_category

nvm介绍、nvm下载安装及使用-程序员宅基地

文章浏览阅读10w+次,点赞190次,收藏1.2k次。一、nvm介绍 在工作中,我们可能同时在进行2个或者多个不同的项目开发,每个项目的需求不同,进而不同项目必须依赖不同版本的NodeJS运行环境,这种情况下,对于维护多个版本的node将会是一件非常麻烦的事情,nvm就是为解决这个问题而产生的,他可以方便的在同一台设备上进行多个node版本之间切换。二、nvm下载安装及使用2.1 nvm下载安装包下载地址:https://github.com/coreybutler/nvm-windows/releases,windows系统下载..._nvm

安装rvm 导公钥出错gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3-程序员宅基地

文章浏览阅读4.3k次。[root@master 6379]# gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3gpg: 已创建目录‘/root/.gnupg’gpg: 新的配置文件‘/root/.gnupg/gpg.conf’已建立gpg: 警告:在‘/root/.gnupg/gpg...._gpg --keyserver hkp://keys.gnupg.net --recv-keys 409b6b1796c275462a170311380

NAS—IIS虚拟目录_nas文件 添加到iis虚拟目录-程序员宅基地

文章浏览阅读6.1k次。之前项目中有上传图片视频等资源的功能,都是把资源上传到解决方案的目录下,如果越来越多站的空间也越来越大,实在不可取。后来用到了NAS这样一个东西,一个网络存储器,感觉像一个云盘的实体。把所有的资源放在NAS中,方便很多。 1、NAS NAS(Network Attached Storage)网络附属存储)按字面简单说就是连接在网络上,具备资料存储功能的装置,因_nas文件 添加到iis虚拟目录

随便推点

oracle事物的特征,Oracle 事务特征 管理 读取详解-程序员宅基地

文章浏览阅读137次。本文章总结了关于Oracle事务介绍了事务特征 事务管理 事务读三种用法与举实例说明,有需要了解的朋友可以参考一下本文章。本文章总结了关于Oracle事务介绍了事务特征 事务管理 事务读三种用法与举实例说明,有需要了解的朋友可以参考一下本文章。Oracle 事务的特征 ACID,指事务正确执行的四个基本要素的缩写.包含:原子性(Atomicity)、一致性(Consistency)、隔离性(..._oracle 如何加入特征

php mysql 图片上传_使用PHP + 阿里云(Linux服务器) + MySql 实现图片上传功能-程序员宅基地

文章浏览阅读282次。最近在做一个电商的项目,里面有个上传头像的功能.要求可以上传jpg,png,gif等常见图片格式; 于是想到了阿里云服务器存储图片,同时php操作mysql的方法;准备工作:需要准备以下php文件:1.uploadImage.php(处理图片上传,遵循驼峰命名法)--->在uploadImage.php文件中会把用户本地的图片提交到服务器,并把用户上传的图片的路径拼接上服务器的ip地址..._phpstudy的mysql怎么上传图片

云计算Paas(docker)基本环境安装_paas镜像文件-程序员宅基地

文章浏览阅读2.1k次,点赞3次,收藏12次。1,Docker 服务的架构图2,Docker 平台组成3,网络说明设备名:Server 节点主要作为系统的运行指令的发送节点。server:10.0.6.80Client 节点主要为服务运行的节点,可以使用一个或者多个均可。client1:10.0.6.81client2:10.0.6.82Registry 节点主要作为系统所有的运行的镜像仓库节点。registr..._paas镜像文件

用于小物体检测的切片辅助超推理SAHI实现YOLOv8推理-程序员宅基地

文章浏览阅读3.4k次,点赞7次,收藏74次。如下图所示,在推理过程中采用了切片法,最初,原始图像被划分为尺寸为M×N的重叠块。通过结合使用调整大小的补丁和原始图像,模型可以学习到适应不同尺度的物体,并提高对大型物体的检测能力。然而,由于网络的局限性,学习到的特征可能无法充分捕捉到较小物体的微妙而复杂的细节。预训练模型,尤其是使用深度卷积神经网络(CNN)架构的模型,可以捕获丰富的分层特征,这对于小物体的检测非常有帮助。SAHI的独特之处在于它能够与任何物体检测器无缝集成,无需繁琐的微调,并在不影响性能的情况下快速应用,为小物体检测带来了重大的突破。_sahi

详解MNIST数据集下载、解析及显示的Python实现-程序员宅基地

文章浏览阅读2.7w次,点赞98次,收藏249次。MNIST 数据库是一个大型手写数字数据库(包含0~9十个数字),包含 60,000 张训练图像和 10,000 张测试图像,通常用于训练各种图像处理系统。训练数据集取自美国人口普查局员工,而测试数据集取自美国高中生。所有的手写数字图片的分辨率为28*28。数据集MNIST中的文件名下载地址文件大小训练集图像9912422字节训练集标签28881字节测试集图像1648877字节测试集标签4542字节。_mnist数据集下载

redis删除指定前缀的缓存-程序员宅基地

文章浏览阅读1k次。redis作为缓存服务器为MySQL数据库提供较高的防御性,对于一些数据的查询可以直接从缓存中可以进行查询。但是,某些情况下,我们需要清除缓存。以下场景:公司经常做活动,每个活动都存在大量的数据。在新活动进行测试的时候,也会产生一些缓存,但是删除这些缓存如果不能批量删除就有点烦了。在写活动的时候,为了保证活动的缓存不冲突,用自己姓名的前缀及活动的英文名作为前缀。缓存在很大程度上能够..._redis清理以某个字符串开头的缓存

推荐文章

热门文章

相关标签