关于“稳定”的相爱相杀:负载测试和压力测试
① 负载测试:是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试;
② 压力测试:是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试;
例子:
登录接口,我们先10个用户访问,然后100个用户访问,然后1000个用户访问,关注程序的响应时间,所耗资源,直到超时或关键资源耗尽
压力测试:是指程序长时间运行的稳定性
例子:
程序,在运行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) 容量测试,通常和数据库有关,容量和负载的区别在于:容量关注的是大容量,而不需要关注使用中的实际表现。
其中,容量测试、负载测试、压力测试的英文解释为:
Volume Testing = Large amounts of data
Load Testing = Large amount of users
Stress Testing = Too many users, too much data, too little time and too little room
可能大家角色性能测试、负载测试和强度测试比较混淆。没错,这三个概念是比较容易使人糊涂。负载测试和压力测试,都属于性能测试的子集。 性能测试,表示在一个给定的基准下,能执行的最好情况。负载测试,也是性能测试,但是他是在不同的负载下的。压力测试,是在较高强度情况下的性能测试。
性能测试是动力,负载测试载重,压力测试强度
压力测试stress test:是在一定的『负荷条件』下,长时间连续运行系统给系统性能造成的影响。
负载测试Load test:在一定的『工作负荷』下,给系统造成的负荷及系统响应的时间。
这儿我加了括号强调一下压力测试与负载测试的区别。
负载测试通常描述一种特定类型的压力测试——逐步增加用户数量或用户请求来对系统(程序)进行加压。比如现实中有个系统提供在线查询服务,那我们从比较小的负载开始,逐渐增加模拟查询请求的数量或用户量, 直到系统响应时间超时,就是说的负载测试。这儿加压的类型必须是应用提供的服务类型,也就是工作负荷。
负载测试的目标是测试在一定负载情况下的系统性能(不关注稳定性,也就是说不关注长时间运行,只是得到不同负载下相关性能指标即可);实际中我们常从比较小的负载开始,逐渐增加模拟用户的数量(增加负载), 观察不同负载下应用程序响应时间、所耗资源,直到超时或关键资源耗尽,这就是所说的负载测试,它是测试系统的不同负载情况下的性能指标。
压力测试的目标是测试在一定的负载下系统长时间运行的稳定性,但是这个负载不一定是应用系统本身造成的。比如我们经常利用脚本或工具事先吃掉服务器的一部分cpu、内存或带宽等,创造出一定的负载环境并测试被测应用系统在此环境下的事物处理能力,响应时间等等。压力测试尤其关注大业务量情况下长时间运行系统性能的变化(例如是否反应变慢、是否会内存泄漏导致系统逐渐崩溃、是否能恢复);压力测试是测试系统的限制和故障恢复能力,它包括两种情况:
1.稳定性压力测试:在选定的压力值下,长时间持续运行。通过这类压力测试,可以考察各项性能指标是否在指定范围内,有无内存泄漏、有无功能性故障等;
2.破坏性压力测试:在稳定性压力测试中可能会出现一些问题,如系统性能明显降低,但很难暴露出其真实的原因。通过破坏性不断加压的手段,往往能快速造成系统的崩溃或让问题明显的暴露出来;
如果还不理解的话,打个比喻:
这儿有个服务员,对应咱们的应用系统吧。
压力测试就是给这位服务器外部压力,比如长时间不让他休息,不给开工资等,看看服务员会不会开小差(无法及时响应请求),或者罢工(宕机)之类的。
负载测试就是在单位时间内逐步加大这位服务员的工作量,看看此服务员在不同的工作量下完成服务的速度和质量,从而了解到该服务员的工作能力。
压力测试和负载测试能够帮组我们了解到一个服务器的抗压能力和工作能力,当然也能帮我们评估一个系统或软件的性能瓶颈与质量。
最后: 大家可以去我博客首页看下侧边栏! 进去有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
好文推荐
2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!
什么样的人适合从事软件测试工作?
软件测试和软件开发哪个发展更好
那个准点下班的人,比我先升职了…
关于“稳定”的相爱相杀:负载测试和压力测试相关推荐
- 阿里云CDN技术掌舵人文景:相爱相杀一路狂奔的这十年
提到阿里云CDN,不得不提技术掌舵人姚伟斌(文景),虽然他不是团队中最"老"的同学,但他却历经了淘宝业务发展最为飞速的几年,见证了从最初服务淘宝和集团内部的CDN,到如今国内服务客 ...
- 人类一败涂地电脑版_iOS账号分享 |人类一败涂地 我们继续相爱相杀,PC大火游戏移植!...
「 改变能改变的一切,接受不能改变的一切!」 ▼ PC 平台上爆火的多人物理益智游戏<人类一败涂地>(Human: Fall Flat)移动版正式登陆 iOS 和 Android 平台,游 ...
- 美团支付宝互探腹地 相爱相杀再度升级
文章原创来自洞见网:http://www.localonline.com.cn/view/ec/735.html,转载请注明出处. 20年前,网络还未盛行,曾有人做过一场行为艺术"不出门, ...
- 无责任猜想#冰桶挑战#大佬们相爱相杀众生相
看#冰桶挑战#大佬们点名的关系图谱,无意中发现很多有趣的关系啊,下面为八妹子自娱自乐无责任猜想,认真你就输了哦! 1. 微软谷歌苹果Facebook,老大哥.新小弟之间的相互厮杀 FACEBOOK的 ...
- Anchor Based和Anchor Free的相爱相杀与ATSS的诞生
前言 我们都知道按照是否出现RPN可将目标检测算法分为two-stage和one-stage,其中one-stage的一个主要代表便是YOLO系列,而根据是否存在先验锚框的定义我们也可以将其分为Anc ...
- 支付宝与微信转战刷脸支付,多年相爱相杀情归何处?
说起阿里巴巴与腾讯,似乎怎么也绕不开马云跟马化腾. 两马同台,自是不同凡响. 有次,两人同台颁奖. 主持人问马云:"你们都信马,你觉得两人之间最显著的区别是什么?" 马云笑答:&q ...
- 30年「相爱相杀」 :30张照片回顾乔布斯和比尔盖茨之间「不得不说」的故事
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 来源丨BI 来源公众号丨新智元(ID:AI_era) ...
- 30年「相爱相杀」 :30张照片回顾乔布斯和比尔盖茨之间「不得不说」的故事...
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 来源丨BI 来源公众号丨新智元(ID:AI_era) ...
- 哥本哈根学派创始人:不会踢足球的物理学家不是一个牛逼的教育家,与爱因斯坦相爱相杀...
要说史上最帅的物理学家是马克斯·普朗克,很多人是反对的,他们表示: 那今天,咱们就来说说这个建立了哥本哈根学派,拿过诺贝尔物理学奖,跟爱因斯坦相爱相杀的物理界男神玻尔! 尼尔斯·玻尔 足球?物理? 1 ...
最新文章
- linux shell里面nohup的用法
- 【django轻量级框架】Django框架介绍与安装
- pandas fillna_Pandas极简教程——数据清洗
- android 调出键盘表情_Android 软键盘和emoji表情切换方案,和微信几乎一样的体验...
- 雅礼集训 2017 Day1
- 小甲鱼Python笔记(下)
- MongoDB与Spring集成教程
- ASP.NET Core2.2 和2.1 版本中对cookie的设置和存储
- intent-filter something
- java memcache 实例_Java使用memcache示例
- 问题 D: 求圆的面积和周长 山东科技大学oj c 语言
- SAP Basis常用事务代码
- 后续:安装ORK功能包踩坑之路和解决方案
- Python爬虫实战--斗鱼直播爬虫
- 常用Python模块下载网站
- win11电脑快捷键
- 2022内蒙古最新建筑施工电工(建筑特种作业)模拟考试试题及答案
- Unity中XChart饼图如何增加调色盘颜色选项
- 07过去进行时,过去将来时,陈述句 变宾语从句(that 引导)
- 计算机控制/SLAM/ROS2云班课等详细说明2019-2020-2学期
热门文章
- ssm游文化推广系统答辩PPT模板
- android与ndk交互,NDK-JNI与Java的交互 hello-world
- : 字符向量未正常终止_文本挖掘从小白到精通(一)---语料、向量空间和模型的概念...
- mysql datetime为空不显示_将null和格式不正确的datetime值导入datetime列MySQL
- Python+OpenCV:图像对比度受限自适应直方图均衡化(CLAHE, Contrast Limited Adaptive Histogram Equalization)
- 内衬纸缺陷在线检测系统
- #pragma pack 用法详解
- Activiti工作流从入门到入土:完整Hello World大比拼(Activiti工作流 API结合实例讲解)...
- Delphi使用两种不同方法获取系统端口信息--(装载)
- 【Spring】Service 注入失败,空指针