`
vivus
  • 浏览: 116811 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

负载测试、容量测试、压力测试、强度测试、性能测试的区别

 
阅读更多
性能测试(或称多用户并发性能测试)、负载测试、强度测试、容量测试是性能测试领域里的几个方面
性能测试(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


举例:一个人背X斤
负载测试:200斤情况下,是否能坚持5分钟。
压力测试:200,300,400...斤情况下,他的表现,什么时候失败,失败之后什么表现,重新扛200是否正常。
容量测试:在坚持5分钟的情况下,他一次最多能扛多少斤。


负载测试:负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担。 强度测试:强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况。
容量测试:确定系统可处理同时在线的最大用户数。
1.强度测试或压力测试:强度或压力测试是在一种需要异常数量、频率或资源的方式下,执行可重复的负载测试,以检查程序对异常情况的抵抗能力,找出性能瓶颈。异常情况,主要指那些峰值、极限值、大量数据的长时间处理等,包括:连接或模拟了最大(实际或实际允许)数量的客户机;所有客户机在长时间内执行相同的、性能可能最不稳定的重要业务功能;已达到最大的数据库大小,而且同时执行多个查询或报表事务当中断的正常频率为每秒一至两个时,运行每秒产生十个中断的测试用例;运行可能导致虚存操作系统崩溃或大量数据对磁盘进行存取操作的测试用例等。压力测试可以分为稳定性测试和破坏性测试:
稳定性压力测试。在选定的压力值下,持续运行24小时以上的测试。通过压力测试,可以考察各项性能指标是否在指定范围内,有无内存泄漏、有无功能性故障等。破坏性压力测试。在压力稳定性测试中可能会出现一些问题,如系统性能明显降低,但很难暴露出其真实的原因。通过破坏性不断加压的手段,往往能快速造成系统的崩溃或让问题明显的暴露出来。
在压力测试中,会给程序加上一些跟踪机制(如log日志等),然后查看监视系统、服务器等性能的日志文件是必要的,找出问题出现的关键时间或检查测试运行参数,通过分析问题或参数从而有目的地调整测试策略或测试环境,使压力测试结果真实地反映出软件的性能。
2.性能测试系统的性能指标,一般赢在产品需求文档中有明确定义,有三种形式描述软件系统的性能指标:
给出产品性能的主要指标,如在100000记录中查询一个特定数据的时间为0.5秒。以某个已发布的版本为基线,如比上一个版本的性能提高30-50%。和竞争对手的同类产品比较。
性能测试,根据其目的分为:产品性能质量测试,通过测试,决定产品是否达到产品规格书所要求的性能指标(非功能性需求)基准值测试,通过对当前产品的性能测试,确定产品具体的性能指标,建立性能指标基准。基准值,作为后继产品发布的性能参考(在新版本中,性能指标要求只升不降)或和竞争对手产品比较的参考。
性能规划测试,通过不断的测试,确定所需要的硬件配置(内存、CPU、网络等)、软件配置,以满足实现定义的性能指标要求。这种测试,对于软件系统的部署是非常有意义的。同时,也可以进一步了解硬件参数、软件参数对系统性能的影响程度,从而保证系统具有很好的扩充性或事先制定较好的系统增容的计划。
性能测试的方法,主要有:稳定压力加载,一次性将负载加到某个水平,持续一段时间,也称为flat测试。逐渐加载或交替加载到某个负载水平,也称为“ramp-up”测试。峰谷测试,确定从系统高峰时间的负载转为几乎空闲、再攀升到高负载这样峰值交替情况下的系统性能状态/指标。这种测试兼有容量测试的特点或属于容量测试的一部分。
性能测试,一般都通过测试工具来模拟人为的操作而进行。性能测试的重点在于测试环境的建立、前期数据的设计与后期数据的分析。因为性能测试需要获得一定特定条件下(如100、200、500、1000个实时的连接)的系统占用资源(CPU、内存等)数据或系统行为表现,而且还要依靠测试工具或软件系统记录下这些指标变化的数据结果。例如,如果对一个Browser/Server结构的网络实时在线的培训系统软件进行测试,系统性能焦点是在不同数量的并发连接下,服务器的CPU、内存的占用率、客户端的响应时间等。测试过程中,并发连接的不断增加(负载的增加)在系统性能上的表现越来越明显。在系统性能测试时,加载过程中,每到一个测试点时须让系统平稳运行一段时间后再获取数据,以消除不同测试点的相互影响。从表中可以看出,同样是300个用户,1?00与 60?的性能表现差别很大,加载的方式对系统性能影响也较大,所以,尽量模拟不同的加载方式来进行系统的性能测试。除此之外,还可以测试TCP、 HTTPS等不同连接方式下的数据,进行比较。通过比较和分析,可以清楚知道系统的性能状况,以及什么样的条件下系统性能达到最佳状况、什么地方是性能的瓶颈。性能测试要求测试环境应尽量与产品运行环境保持一致,应单独运行,尽量避免与其他软件同时使用。
3.容量测试软件测试通过性能测试,如果找到了系统的极限或苛刻的环境中系统的性能表现,在一定的程度上,我们完成了负载测试和容量测试。容量可以看作系统性能指标中一个特定环境下的一个特定性能指标,即设定的界限或极限值。容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。对软件容量的测试,能让软件开发商或用户了解该软件系统的承载能力或提供服务的能力,如某个电子商务网站所能承受的、同时进行交易或结算的在线用户数。知道了系统的实际容量,如果不能满足设计要求,就应该寻求新的技术解决方案,以提高系统的容量。有了对软件负载的准确预测,不仅能对软件系统在实际使用中的性能状况充满信心,同时也可以帮助用户经济地规划应用系统,优化系统的部署。
   压力测试、容量测试和性能测试的关系:压力测试可以看作是容量测试、性能测试和可靠性测试的一种手段,不是直接的测试目标。压力测试的重点在于发现功能性测试所不易发现的系统方面的缺陷。而容量测试和性能测试是系统测试的主要目标内容,也就是确定软件产品或系统的非功能性方面的质量特征,包括具体的特征值。容量测试和性能测试更着力于提供性能与容量方面的数据,为软件系统部署、维护、质量改进服务,并可以帮助市场定位、销售人员对客户的解释、广告宣传等服务。压力测试、容量测试、性能测试,测试的方法相似、相通,在实际测试工作中,往往结合起来进行,以提高测试效率。一般会设置专门的性能测试实验室,完成这些工作。即使用虚拟的手段模拟实际操作,所需要的客户端有时还是很大的,所以性能测试实验室的投资较大。


pertinent:
http://www.51testing.com/html/8/2009.html
分享到:
评论

相关推荐

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

    在网上看到了一篇很详细的解释,贴在这里和大家分享一下:性能测试(或称多用户并发性能测试)、负载测试、强度测试、容量测试是性能测试软件测试中性能测试,负载测试,压力测试有什么区别对于性能测试,负载测试,...

    负载测试与性能测试.pdf

    负载测试与性能测试是软件质量保证的重要组成部分,主要关注系统在高负载和压力环境下的表现。这两个术语虽然经常一起使用,但它们之间存在微妙的差异。 1. **性能测试(Performance Test)**: 性能测试旨在评估...

    软件测试中的性能测试与负载测试技术.pptx

    ### 软件测试中的性能测试与负载测试技术 #### 第一章:软件测试中的性能测试与负载测试技术 **简介** 性能测试是软件测试的关键组成部分之一,它着重于评估软件系统在各种负载条件下的性能表现。这类测试有助于...

    性能测试分类—规范的权威

    本篇文章将详细解析性能测试的几种主要分类,包括性能测试、负载测试、压力测试、并发测试和配置测试,以及它们的特点和应用场景。 1. **性能测试(狭义)**: - 目的在于验证系统是否达到宣称的性能标准。 - 需...

    淘宝性能测试白皮书V1.0

    《淘宝性能测试白皮书V1.0》是针对电商领域的性能测试进行深入探讨的一份专业文档,旨在为电商平台提供一套完整的性能测试解决方案。在互联网行业中,尤其是像淘宝这样的大型电商平台,性能测试对于保证系统稳定性和...

    负载和压力测试的工作原理.pdf

    测试主要由负载测试和压力测试组成,两者都通过模拟真实用户行为来检测系统的能力和耐受度。 负载测试是一种模拟正常或预期的用户负载,以测试系统在正常工作条件下的性能。例如,在电子商务网站上,这可能涉及模拟...

    性能测试计划

    性能测试策略是整个测试计划的核心部分,它包含了多种测试类型:性能评测、负载测试、强度测试和容量测试。性能评测主要是对系统在特定条件下的性能行为进行评估,而负载测试则着重于在达到系统极限时的性能表现。...

    性能测试常见术语

    6. **负载测试**:旨在确定系统在正常或预期负载下的性能,通常不会超过系统的设计容量。 7. **压力测试**:压力测试是将系统推向极限,超出其设计容量,以了解系统的崩溃点或性能下降的临界点。 8. **耐久性测试*...

    性能测试分类浅谈

    压力测试(强度测试) - **定义与目的**:压力测试是在系统资源高度利用的情况下,测试系统的稳定性和处理能力。 - **特点**: - 检查系统在高压力下的表现。 - 通过模拟负载使得CPU、内存等资源接近饱和。 - ...

    软件项目包测试-web性能测试

    ### Web性能测试基础 #### 1.1 Web性能测试简介 Web性能测试是一种评估Web应用在各种条件下的表现和响应速度的过程。这类测试对于确保Web应用能够在预期的负载下正常运行至关重要。它不仅关注Web应用的功能性,还...

    性能测试面试题总结(答案全)

    它涵盖了多种测试类型,如负载测试、强度测试、数据库容量测试、基准测试和并发测试等。 #### 二、性能测试的主要类型 - **负载测试**:验证系统在不同工作负载下的性能表现。 - **强度测试**:测试系统在极端条件...

    网络压力测试工具

    “福瑞网络压力测试工具.exe”可能是一款名为福瑞的网络压力测试软件的可执行文件,它提供了对目标网络或服务器进行高强度负载测试的功能。用户可以通过这个工具设置不同的参数,如并发连接数、请求频率、持续时间等...

    性能测试报告模板

    测试通常包括负载测试、压力测试、耐久测试和稳定性测试等不同类型,每种都有其特定的测试场景和指标。 1. 负载测试:模拟正常或预期的工作负载,目的是了解系统在常规操作条件下的性能。这有助于识别潜在的瓶颈和...

    软件性能、压力测试实用.pdf

    首先,性能测试包括多种类型,如并发测试、负载测试、压力测试、疲劳强度测试、内存泄露检测、综合场景测试、数据容量测试、极限测试和递增测试。这些测试各有侧重,旨在全面了解系统在不同条件下的行为。 并发测试...

    性能测试面试题总结(答案全).docx

    2. **性能测试**:性能测试是全面评估系统性能的过程,包括负载测试、强度测试、数据库容量测试、基准测试和并发测试。其目的是验证系统是否满足预期的性能需求,确保在预期用户量和业务量下的高效运行。 3. **性能...

    5.6 性能测试1

    广义的性能测试则更为全面,涵盖了多种测试类型,如压力测试、负载测试、强度测试、并发测试、大量数据测试、配置测试和可靠性测试。压力测试通过逐渐增加负载直至系统性能显著下降,以确定系统的压力承受能力。负载...

    性能测试指标收集.pdf

    它涵盖了多个关键指标,如响应时间、吞吐量和资源利用率,以及各种类型的测试,包括负载测试、压力测试、配置测试、容量测试、基准测试和并发测试。这些测试各有其目标,旨在确保系统在不同条件下的性能表现。 响应...

    性能测试(一)

    ### 性能测试基础知识详解 #### 一、性能测试概述 **性能测试**是指通过模拟实际用户操作场景,对被测系统施加不同的工作负载,评估系统在各种条件下的性能表现,以确保系统能够在预期的工作负载下保持稳定、高效...

Global site tag (gtag.js) - Google Analytics