负载测试与压力测试的区别
以下内容引自: http://blog.csdn.net/shangyichen/article/details/5438528
什么叫压力测试(Stress Testing)
- 标签:
- 测试 /
- testing /
- 磁盘 /
- disk /
- 服务器 /
- user
- 4572
什么叫压力测试(Stress Testing)
在测试两个字前面加上一个限定词,就变成了很多测试。例如:压力测试、负载测试、性能测试、功能测试等等。但究竟什么是压力测试,初学者往往望文生义,都能说上一两句。是啊,谁还不懂“压力”是什么意思?谁还没经历过压力?然而,压力测试的真正含义和目的,它和其它测试(特别是负载测试)的区别,不是所有的软件工程师都是掌握的。
按照Ron Patton在其《Software Testing》一书中的定义,压力测试是一种破坏性测试,它故意让软件在比较少的资源环境下运行,如低内存、小硬盘、慢CPU上运行,考验程序直至程序无法运行,从而发现软件缺陷。用一句形象的话来比喻,就是让软件在饥饿状态上运行。
下面有一个例子。
一般地,软件应生成运行日志,当系统出现故障时能根据日志快速诊断出问题所在,或用于操作的责任追踪和审计,这些日志文件可能记录在本地磁盘上,工程师如想到要这一步,即系统运行情况要记录在日志里,那么他就比完成学校老师作业进了一步。日志文件随着时间的推移不断膨胀,总有一天当前磁盘不够用了,无法记录新的日志,软件设计者要想办法解决这个问题,解决这个问题有两个办法:一是提示用户系统无法记录新的日志,让用户判断有不要中断系统运行;二是按照字母顺序,将日志记录到下一个磁盘,如D盘或E盘或F盘,如此等等。软件工程师如能想到这一步,那么他又进了一步。如果将后续的D、E、F等所有的盘都用完了,再提醒用户,或直接终止系统运行。
上述逻辑可用下面的伪程序表示:
1 If disk C has enough available space then 2 Write Log to C; 3 Else 4 If D disk exists then 5 If D has enough available space then 6 Write log to D; 7 Else 8 If E disk exist then 9 If E has enough available space then 10 Write Log to E; 11 Else 12 Prompt user: not available disk space for log; 13 End if 14 Else 15 Prompt user: not available disk space for log; 16 End if 17 End if 18 End if 19 End if |
在上面的例子中,如果对其进行压力测试,就是选用一台很小配置的机器,各磁盘的剩余空间都很小。在这种情况下运行系统,很快机器上的所有磁盘空间都能被占满,最后程序被迫终止。
这就是压力测试的一个典型例子,将程序施加“压力”,将其逼到没法运行的地步。如果你选用的机器C盘足够大,在你整个测试活动过程中,C盘不会本占满,则执行到的语句只有1、2和19三行,如果你选用的机器,其C、D、E三个磁盘都很小,则日志很快就会占满这几个磁盘,则1-19的所有语句都能本执行。可以看出,有无压力测试,对程序语句和逻辑分支的覆盖是不一样的。
很多人误将负载测试和压力测试混为一谈,认为给程序的负载大,程序经受的压力就大。其实不然,负载测试考验的是系统的吞吐量,假如一个网站号称能经受100万个用户同时访问,那么就想方设法模拟出100万个用户对网站发起连接,观察服务器能否正常作出反应。一般地,负载测试是给被测的系统“喂饱”,看看它能否吞下去,系统为了能吞下大的输入,常常在内部机制上下工夫,或者扩大服务器的配置。
负载测试是尽量增加对系统的访问,而压力测试是尽量使系统在资源稀缺的环境下运行。二者区别很大。但不排斥两个技术同时使用。
转载于:https://www.cnblogs.com/cheese320/p/8316772.html
负载测试与压力测试的区别相关推荐
- 性能测试、负载测试、压力测试的区别
转载自:https://www.cnblogs.com/Bonnieh/p/5826773.html 性能测试(Performance Testing):是通过自动化的测试工具模拟多种正常.峰值以及异 ...
- 性能测试,负载测试,压力测试有什么区别
性能测试,负载测试,压力测试有什么区别 性能测试(或称多用户并发性能测试).负载测试.强度测试.容量测试是性能测试领域里的几个方面,但是概念很容易混淆.下面将几个概念进行介绍. 性能测试(Perfor ...
- 【软件测试】负载测试与压力测试的区别
负载测试与压力测试的区别在于负载测试侧重于压力持续的时间,而压力测试则更加强调施加压力的大小. 压力测试(Stress Testing):是指不断地给被测系统增加压力,直到被测系统被压垮,从而确定系统 ...
- 各种测试的定义、负载测试和压力测试的区别
性能指标关注:时间.空间 性能指标与页面无关 性能测试定义 通过自动化的测试工具模拟多种正常.峰值以及异常负载条件来对系统的各项性能指标进行测试. 基准测试 在给系统施加较低压力时,查看系统的运行状况 ...
- 性能测试之负载测试、压力测试、可靠性测试和容量测试的区别
负载测试.压力测试.可靠性测试.容量测试的异同点 1.负载测试是逐步增加压力,来找到性能拐点,主要是为了找性能指标,比如服务器最大承受的并发用户数是45,为了找到这个指标,我们一开始施加的用户是20个 ...
- 压力测试和负载测试区别_如何理解与区分软件性能测试、负载测试、稳定性测试、压力测试...
性能测试.负载测试.稳定性测试.压力测试之间有何区别?刚开始自己也不能很好的区分,随着一些具体性能测试实践的开展,大概有一个基本的认识,总结如下: 首先,大致了解下软件产品的性能受哪些因素的影响 我们 ...
- 负载测试、压力测试和性能测试的区别
负载测试(Load testing).压力测试(Stress Test,应称为强度测试)和性能测试,这三个概念常常引起混淆,难以区分,从而造成不正确的理解和错误的使用. 负载测试.压力测试和性能测试的 ...
- 负载测试和压力测试的区别
负载测试的重点是:在系统正常工作情况下的性能指标,发现系统能够承受最大负载量的测试,属于正常范围的测试: 压力测试的重点是:确定在什么负载下系统的性能处于失效状态,发现系统性能的拐点,来获得系统能提供 ...
- 性能测试、负载测试以及压力测试
为什么80%的码农都做不了架构师?>>> 根据产品的时间特性和资源特性,效率测试可以包括不同的测试类型,例如:性能测试.负载测试和压力测试.本文则主要介绍这三种测试,希望对你有帮助, ...
最新文章
- 使用哈工大LTP进行文本命名实体识别并保存到txt
- Kaggle冠军经验分享丨如何用15个月冲到排行榜的首位
- 大年初二,今年过年你选择在男方家过还是女方家过?
- 电脑启动后,没有桌面
- invalid ELF header
- HID接口设备-硬件要求
- 李彦宏千字愿景内部信:10次提到“用户”
- BookMarklet:瑞士军刀你用了吗?
- option columns.render 渲染列(1) 添加checkbox
- 如何用DOS命令批量删除文件?(_desktop.ini 或 thumbs.db)
- Python 中如何解决 asyncio 文件描述符最大数量限制问题
- 设计模式 经典书籍必备推荐
- Android自定义UI实例
- viper4android使用时,ViPER4Android 目前进度 [11-21,13时16分]
- Exception.ToString()使用及其他方法比较
- 有关PHP的可变函数
- 智能硬件无线通信协议(二)
- 复旦大学数学学院高等代数历届期中考试大题精选之一(08级--12级)
- OmniPeek抓包工具的安装和使用(附有安装包)
- 浏览器书签栏的小图标设置
热门文章
- ClickHouse数据分析列式数据库概述
- Python Django 常用命令:创建迁移文件/数据库建表/创建admin超级用户
- Ribbon客户端负载均衡介绍
- Java中的同步集合与并发集合有什么区别?
- SpringBoot启动banner更改
- POI如何自定义单元格背景颜色
- centos7.5安装influxdb-1.7.8
- 4.3 计算机网络之IPv4(IPv4分组、IPv4地址、NAT、子网划分与子网掩码、CIDR、ARP协议、DHCP、ICMP)
- scrcpy设置快捷键_电脑端scrcpy控制Android手机
- C#语法:正则表达式 --Trim()的实现