性能测试,负载测试,压力测试有什么区别

转自:http://www.cnblogs.com/bugua/archive/2012/04/06/2434940.html,感谢分享!

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

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

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

强度(压力)测试(Stress Test): 强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况,目的是找到系统在哪里失效以及如何失效的地方。包括 
Spike testing:短时间的极端负载测试 
Extreme testing:在过量用户下的负载测试 
Hammer testing:连续执行所有能做的操作

容量测试(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

可能大家觉得性能测试、负载测试和强度测试比较混淆。没错,这三个概念是比较容易使人糊涂。负载测试和强度测试,都属于性能测试的子集。下面举个跑步的例子进行解释。 
性能测试,表示在一个给定的基准下,能执行的最好情况。例如,在没有负重的情况下,你跑100米需要花多少时间(这边,没有负重是基准)? 
负载测试,也是性能测试,但是他是在不同的负载下的。对于刚才那个例子,如果扩展为:在50公斤、100公斤……等情况下,你跑100米需要花多少时间? 
强度测试,是在强度情况下的性能测试。对于刚才那个例子,如果改为:在一阵强风的情况下,你在负重或没有负重的情况下,跑100米需要花多少时间?

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

  • 压力测试stress test:在一定的负荷条件下,长时间连续运行系统给系统性能造成的影响。(10个用户运行1小时,20个用户运行1小时)
  • 负载测试Load test:在一定工作负荷条件下,给系统造成的负荷及系统响应的时间。

压力测试主要是为了发现在一(任意)定条件下软件系统的性能的变化情况,通过改变应用程序的输入以对应用程序施加越来越大的负载(并发,循环操作,多用户)并测量在这些不同的输入时性能的改变,也就是通常说的概念:压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。其实这种测试也可以称为负载测试,但是负载测试通常描述一种特定类型的压力测试——增加用户数量以对应用程序进行压力测试。比如实际中我们说从比较小的负载开始,逐渐增加模拟用户的数量, 直到应用程序响应时间超时,就是说的负载测试。

压力测试的目标是测试在一定的负载下系统长时间运行的稳定性,尤其关注大业务量情况下长时间运行系统性能的变化(例如是否反应变慢、是否会内存泄漏导致系统逐渐崩溃、是否能恢复);压力测试是测试系统的限制和故障恢复能力,它包括两种情况:
稳定性压力测试:在选定的压力值下,长时间持续运行。通过这类压力测试,可以考察各项性能指标是否在指定范围内,有无内存泄漏、有无功能性故障等;
破坏性压力测试:在稳定性压力测试中可能会出现一些问题,如系统性能明显降低,但很难暴露出其真实的原因。通过破坏性不断加压的手段,往往能快速造成系统的崩溃或让问题明显的暴露出来;

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

——————————————————————————————

最简单来说:

负载测试是测试软件本身最大所能承受的性能测试;

压力测试就是一种破坏性的性能测试;

只要理解这两点区别,就非常好理解性能测试了

转自:http://www.cnblogs.com/bugua/archive/2012/04/06/2434940.html,感谢分享!

原文地址:https://www.cnblogs.com/lycun-0426/p/10905981.html

时间: 2024-08-11 03:36:17

性能测试,负载测试,压力测试有什么区别的相关文章

通过命令行对CPU负载做压力测试

无意间在51首页上看到一篇关于"通过命令行制造CPU负载或压力"的文章,感觉不错,先记录下来,为将来的使用做好笔记记录! 很简单,就一个命令: # cat /dev/urandom | md5sum 然后通过top观察,cpu的值果然很高,说明测试成功! 有图有真相^ _ ^ 通过命令行对CPU负载做压力测试

Android App 专项测试--压力测试篇(二)

第二部分(实践): 准备: 下载android sdk    地址:https://developer.android.com/index.html 配置环境变量 (for Ubuntu or mac) source /etc/profile 下载安装 python 2.7/3.6 一个app压力测试实践: 1. 准备一台笔记本 和 一部android手机.手机开发者选项,打开usb连接 2. adb devices   查看设备 3. 安装测试app.  adb install  packag

利用Apach ab对nodejs进行并发负载的压力测试

大家应该都有听过,nodejs性能优越,并发也很好之类的话,那我们用Apache ab对node这个空框架测试一下,然后再对一些网站测试一下,或或少一定的参考意义把. Apache ab测试工具是模拟多线程并发请求,就是有n多请求同时向服务器发送,同时也使得ab成为某些网络攻击的工具. 话不多少,直接开始吧. 先启动一个web服务器,保证请求的通畅. var http = require('http'); http.createServer(function (request, response

压力测试和性能测试的区别

1.性能测试(Performance Test):通常收集所有和测试有关的所有性能,通常被不同人在不同场合下进行使用.关注点:how much和how fast 2.负载测试(Load Test):负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担.关注点:how much 3.压力测试(Stress Test): 压力测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况,目的是找到系统在哪里失效以及如何失效的地方.包括:Spike testing(尖峰冲击测试):短时

性能测试vs负载测试vs压力测试-概念普及

下面我们主要介绍性能测试.负载测试和压力测试. 效率作为ISO 9126内部和外部质量的重要质量属性之一,其含义是在规定条件下,相对于所用的资源的数量,软件产品可提供适当性能的能力.资源可能包括其他软件产品或系统的软件和硬件配置,以及其他相关的资源(例如:打印纸.磁盘等). 效率测试主要关注产品的时间和资源相关的特性.时间相关的特性是指在规定条件下,软件产品执行其功能时,提供适当的响应和处理时间以及吞吐量的能力,例如:用户打开某个网页需要等待的时间:资源相关的特性是指,在规定条件下,软件产品执行

性能测试vs负载测试vs压力测试

下面我们主要介绍性能测试.负载测试和压力测试. 效率作为ISO 9126内部和外部质量的重要质量属性之一,其含义是在规定条件下,相对于所用的资源的数量,软件产品可提供适当性能的能力.资源可能包括其他软件产品或系统的软件和硬件配置,以及其他相关的资源(例如:打印纸.磁盘等). 效率测试主要关注产品的时间和资源相关的特性.时间相关的特性是指在规定条件下,软件产品执行其功能时,提供适当的响应和处理时间以及吞吐量的能力,例如:用户打开某个网页需要等待的时间:资源相关的特性是指,在规定条件下,软件产品执行

Apache JMeter开源压力测试/负载测试工具 2.12 官方最新版

软件介绍 Jmeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试),而且用Jmeter 来测试 Restful API, 非常好用. 如何学好Jmeter: 如果你用Jmeter去对Web进行功能测试,或者性能测试. 你必须熟练HTTP协议,才能学好Jmeter. 否则你很难理解Jmeter中得概念. Jmeter运行: 解压后, 运行  “bin/jmeter.bat” Jmeter 是支持中文的, 启动Jmeter 后, 点击 Opti

软件测试中的压力测试和性能测试

软件测试的目的是尽可能发现并改正被测试软件中的错误,提高软件的可靠性.,这个定义听起来很正确,但用它来指导测试会带来很多问题.比如有的组织用发现的bug数来衡量测试人员的业绩,其实这就是这种测试目的论在后面作祟,其结果如何呢:其一,有一些不够敬业的测试人员会找来一些无关痛痒的bug来充数,结果许多时间会被浪费在这些无关痛痒的bug上(其实应该修复,何时修复,严重程度是什么,优先级是什么,等等);其二,测试人员会花很大力气设计一些复杂的测试用例去发现一些迄今尚未发现的缺陷,而不关心这些缺陷是否在实

什么是压力测试和负载测试,压力测试和负载测试有什么...

压力测试:是在一定的负荷条件下,长时间连续运行系统给系统性能造成的影响负载测试:在一定的工作负荷下,给系统造成的负荷及系统响应的时间.压力测试主要是为了发现在一(任意)定条件下软件系统的性能的变化情况,通过改变应用程序的输入以对应用程序施加越来越大的负载(并发,循环操作,多用户) 并测量在这些不同的输入时性能的改变,也就是通常说的概念:压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在.其实这种测试也可以称为负载测试,但是负载测试通常描述一种特定类型的压力测试——增加用户数

jmeter 压力测试

一.什么是压力测试 压力测试:测试系统在不同压力情况下的效率状况以及系统可以承受的压力状况. 举例说明:5000人同时到窗帘系统下单购买窗帘时,系统运行速度或者处理效率是否变慢或者系统是否会崩溃. 二.压力测试工具 1. LoadRunner LoadRunner,是一种预测系统行为和性能的负载测试工具.通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试.通过使用 LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速