火龙果性能测试基本概念_第1页
火龙果性能测试基本概念_第2页
火龙果性能测试基本概念_第3页
火龙果性能测试基本概念_第4页
火龙果性能测试基本概念_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件性能测试主讲教师:常润梅13.性能测试术语4.性能测试方法论1.软件性能概念2.不同角度认识授课内容2一、性能测试概念1.1软件性能与性能测试1.2不同角度对软件性能的认识1.3性能测试常用术语的理解1.4软件性能测试方法论31.1软件性能与性能测试

1.软件性能的定义

软件性能覆盖面广泛,对一个系统而言,包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等等。2.性能测试的定义

性能测试用来保证系统运行后的性能满足用户需求。性能测试在软件质量保证中起重要作用。

41.2不同角度对软件性能的认识用户角度系统管理员角度开发人员角度5软件性能的认识–

用户角度软件对用户操作的响应时间,如用户提交一个查询操作、打开一个Web页面的链接等。业务可用度,或者系统的服务水平如何。1.2不同角度对软件性能的认识6软件性能的认识–

系统管理员角度并发压力(系统最多能支持多少用户的访问?系统最大的业务处理量是多少?)服务器端资源使用情况(服务器的资源使用状况合理吗?)是否存在性能瓶颈(系统性能可能的瓶颈在哪里?)系统可扩展性如何(系统是否能够实现扩展?更换哪些设备能够提高系统性能?)1.2不同角度对软件性能的认识7软件性能的认识–

开发人员角度架构设计是否合理数据库设计是否存在问题代码是否需要优化,如SQL语句。如何通过调整代码设计和代码实现,或如何通过调整系统设置提高软件的性能表现。1.2不同角度对软件性能的认识8小结:以上我们讲了三个不同层面的性能关注点,可见,不同的对象对软件系统的性能的关注是不同的。用户角度:响应时间管理员角度:从软件的性能表现分析系统的可扩展性、并发能力等指标开发人员:了解性能的制约因素和引起性能的关键原因9

1.3性能测试常用术语的理解

响应时间并发用户数吞吐量资源利用率性能计数器思考时间10常用术语–

响应时间

响应时间是“对请求做出响应所需要的时间”,是用户视角软件性能的主要体现。

(1)响应时间可分为:

(1):呈现时间(2):系统响应时间在一般性能测试中我们并不关注“呈现时间”因为呈现时间在很多程度上取决于客户端的表现。

1.3性能测试常用术语的理解

11

(2)注意:在进行性能测试时合理的响应时间取决于实际的用户需求,而不能依据测试人员自己设想来决定。12常用术语–

并发用户数(1)从两个不同角度去分析并发用户数的概念

业务角度:同一个时间段内,访问系统的用户数量,这种并发的概念通常在性能测试的方法中使用,用于从业务的角度模拟真实的用户访问,体现的是业务并发用户数。

从服务器承受压力角度:同时向客户端发出请求的客户数量,该概念一般结合并发测试使用,体现的是服务器承受的最大并发访问数。13(2)两个并发概念区别:

以两千人规模的并发用户数为例:

第一种:如果用户操作的方式不同,(场景不同),服务器承受的压力是完全不同的,设想一种极端的情况:在一种情况下,所有用户都是平均每秒单击一次鼠标,发起一个业务;而在另一种情况下,所有用户平均每五秒单击一次鼠标,发起一个业务;则很明显,两种情况下服务器所承受的压力是不同的。(强调的是同一时间段)。

第二种:如果两种情况均有相同的最大并发用户数,则两种情况下服务器承受的最大压力是相同的(强调的是同时)14(3)相关概念:(系统用户数,同时在线用户人数,并发用户数)a.系统用户数设有某个应用系统,设系统有2000个使用用户,这就是说可能使用该系统的用户总数是2000,这个概念就是系统用户数。b、同时在线用户人数:该系统有一个“在线统计”功能(系统用一个全局变量计数所有登陆的用户),从在线统计功能中可以得到,最高峰时有500人在线,这个500就是:同时在线用户人数。15c.并发用户数:根据我们对业务并发用户数的定义,这500就是整个系统使用时最大的业务并发用户数,但这500只表示最高峰时刻有500个用户登陆了系统,并不表示实际服务器承受的能力,因为承受压力还与具体的用户访问模式相关。

注:服务器实际承受的压力,不只取决于业务并发用户数,还取决于用户的业务场景。16在实际性能测试工作中,测试人员一般较关心的是业务并发用户数;也就从业务角度关注究竟应该设置多少个并发数比较合理,因此在后面的讨论中也是主要针对业务并发用户数进行讨论,而且为了方便,有可能使业务并发用户数成为并发用户数。17常用术语–

吞吐量(1)概念:单位时间内系统处理的客户请求的数量,直接体现软件系统的性能承载能力。(2)表示方法:

请求数/每秒,页面数/每秒,访问数/每秒,处理业务数/小时等。(3)作用:用于协助设计性能测试场景,以及衡量性能测试场景是否达到预期目标。用于协助分析性能瓶颈。18(4)吞吐量和并发用户数的关联

F=Nvu*R/T

(在没有遇到性能瓶颈的时候成立)其中,F:吞吐量

Nvu:VU(VirtureUser,虚拟用户)的个数

R:每个vu发出的请求(单击)数量

T:表述性能测试所用的时间虽然吞吐量指标可被看做系统承受压力的体现,但在不同并发用户数量的情况下,对同一个系统施加相同的吞吐量压力,很可能会受到不同的测试结果。

注:两个不同的系统可能具有不同的用户数和用户使用模式,但如果具有基本一致的吞吐量,则可以说他们具有基本相同的平均处理能力。19常用术语–

资源利用率(1)概念:

系统各种资源的使用状况。(2)表示:资源的实际使用/总的资源可用量。(3)作用:进行横向对比。20常用术语–

性能计数器(1)概念:

描述服务器或操作系统性能的一些数据指标。(2)作用:

“监控和分析”的关键作用,尤其是在分析系统的可扩展性、进行性能瓶颈的定位时对计数器的取值的分析非常关键。

注:单一的性能计数器只能体现系统性能的某一个方面,对性能测试结果的分析,必须基于多个不同的计数器。21常用术语–

思考时间(1)概念:从用户角度来说,这个时间指的是用户在进行操作时每个请求之间的间隔时间。(2)作用:因为对交互式应用来说,一般模式是用户在发出一个请求后等待一段时间再发出下一个请求,所以在测试过程中要真实模拟用户操作,就必须在操作之间放置一个Think函数,使得脚本在进行两个操作之间等待一段时间。22(3)如何设置思考时间:

F=Nvu*R/T,R=T/Ts(Ts:思考时间)

F(吞吐量)与Nvu(虚拟用户数)成正比,与Ts(思考时间)成反比。计算思考时间的一般步骤:1.首先计算出系统的并发用户数。2.统计出系统平均的吞吐量。3.统计出平均每个用户发出的请求数量。4.根据公式R=T/Ts计算出思考时间。23(4)0思考时间:设置思考时间为0,是模拟一种尽可能大的压力,研究系统在巨大压力下的表现。一般情况下,应尽量模拟用户在使用业务时的真实思考时间。24(5)思考时间的使用:如果测试的目的是为了“验证应用系统具有预期的能力”,就应该尽量模拟用户在使用业务时的真实思考时间。如果测试的目的是进行更一般的研究,例如“了解系统在压力下的性能水平”或是“了解系统承受压力的能力”,则可以采用0思考时间。251.4软件性能测试方法论SEI负载测试计划过程RBI方法性能下降曲线分析法Segue提供的性能测试过程LoadRunner的性能测试过程26对性能测试来说,如果没有合适的方法论指导,性能测试很容易成为一种随意的测试行为,而随意进行的性能测试,很难取得实际的作用和预期的效果,也就是说,干什么事情必须得遵循一定的原则,没有规矩不成方圆,因此我们需要掌握几种常见的性能测试过程和方法。27SEI负载测试计划过程

1定义:

是一个关于负载测试计划的方法,目标:

是产生清晰、易理解,可验证的负载测试计划。

2关注区域:

目标、用户、用例、生产环境、测试环境、测试场景28

3重点关注和考虑内容:(1)生产环境与测试环境的不同由于负载测试环境与实际的生产环境存在一定的差异。因此,在测试环境上,对应用系统进行的负载测试结果,很可能不能准确的反应该系统在生产环境上的实际性能表现,为了能避免这个风险必须仔细设计测试环境。29(2)用户分析用户是对被检测应用系统性能表现最关注和受影响最大的对象,因此,必须通过对用户行为进行分析,依据用户行为模型建立用例和场景。(3)用例用例是用户使用某种顺序和操作方式对业务过程进行实现的过程,对负载测试,用例的作用主要在于分析和分解关键的业务,判断每个业务发生的频度,业务出现性能问题的风险的。30

4归纳与分析(1)SEI负载测试计划过程,给出了负载测试需要关注的区域,但严格来说,并不能被称为具体的方法论。因为其仅仅给出了对测试计划过程的一些关注内容,而没有能够形成实际的操作过程(只给出关注内容,没有实际的可操作过程,并不是一个完整的操作过程)。(2)与功能测试的异同:同功能测试一样,性能测试也必须经历测试需求,测试设计、测试执行、测试分析等阶段,但由于性能测试自身的特殊性,性能测试过程又不能完全套用功能测试过程。31RBI方法1.定义:RBI(RapidBottleneckIdentify)方法是Empirix公司提出的一种用于快速识别系统性能瓶颈的方法。(Empirix(安培力)公司是世界第四大软件测试公司,专为互联网、语音与网络通信等关键应用技术提供高效的测试与监测技术解决方案。)322.使用:(根据一些实际的使用情况,得出该方法是基于以下一些事实的)发现的80%系统的性能瓶颈都由吞吐量制约。并发用户数和吞吐量瓶颈之间存在一定的关联。采用吞吐量测试可以更快速定位问题。333.分析步骤首先访问服务器上的”小页面“和”简单应用“,从应用服务器、网络等基础的层次上了解系统吞吐量表现。选择不同的场景,设定不同的并发用户数,使其吞吐量保持基本一致的增长趋势,通过不断增加并发用户数和吞吐量,观察系统的性能表现。344.RBI具体的分析方式在确定具体的性能瓶颈时,RBI将性能瓶颈的定位按照一种”自上而下“的分析方式进行分析,首先确定是由并发还是吞吐量引发的性能表现限制,然后从网络、数据库、应用服务器和代码4个环节确定系统性能具体的瓶颈。5.归纳:RBI方法在性能瓶颈的定位过程中能发挥良好的作用,其对性能分析和瓶颈定位的方法值得借鉴,但其也不是完整的性能测试过程。35

性能下降曲线分析法

1.概念:描述的是性能随用户数增长而出现下降趋势的曲线。(性能:可以是响应时间,吞吐量,单击数/秒的数据。一般来说,性能主要指响应时间)2.响应时间下降曲线(分为以下几个部分)单用户区域---对系统的一个单用户的响应时间。这对建立性能的参考值很有作用。性能平坦区---在不进行更多性能调优情况下所能期望达到的最佳性能。这个区域可被用作基线。压力区域---应用”轻微下降“的地方。典型的、最大的建议用户负载压力区域的开始。性能拐点---性能开始”急剧下降的点“。363、总结:以上这几个区域实际上明确标识了系统性能最优秀的区间(性能平坦区),系统性能开始变坏的区间(压力区域),以及系统性能出现急剧下降的点(性能拐点)。对性能测试来说,找到这些区间和拐点,也就可以找到性能瓶颈产生的地方。因此,对性能下降曲线分析法来说,主要关注的是性能下降曲线上的各个区间和相应的拐点

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论