性能测试基本概念
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学习内容
¾性能测试基本概念
¾性能测试常见术语
¾性能测试的模型
¾性能测试的目的
¾性能测试和瓶颈分析
性能测试基本概念
一、性能测试基本概念
什么是性能测试?
¾狭义的性能测试:主要用于描述常规的性能测试,是指通过模拟真实的业务压力或用户使用场景来测试系
统的性能是否满足用户的性能要求。
广义的性能测试是力测试负载测试强度测试¾广义的性能测试:是压力测试、负载测试、强度测试、并发用户测试、大数据量测试、配置测试、可靠性测
试等和性能相关的测试统称。
试等和性能相关的测试统称
—压力测试
性能测试—
一、性能测试
什么是压力测试?
对系统不断施加压力的测试,是通过确定一个
系统的瓶颈或不能接受用户请求的性能点,来获得系
站
WEB站统能提供的最大服务级别的测试。
例如测试一个WEB
统能提供的最大服务级别的测试。
例如测试一个
点在大量的负荷下,系统的事务响应时间何是会变得
不可接受或事务不能正常执行
不可接受或事务不能正常执行。
压力测试的目的是发现在什么条件下系统性能
变得不可接受,并通过应用程序施加越来越大的负荷,变得不接受并通过应用程序施加越来越大的负荷
直到发现应用程序性能下降的拐点。
压力测试和负载
测试有些类似,但是通常把负载测试描述成种特定测试有些类似但是通常把负载测试描述成一种特定类型的压力测试。
—负载测试
性能测试—
一、性能测试
什么是负载测试?
对系统不断施加压力或增加一定压力下的持续时间,直到系统的一性能指标达到极限,例如响应时间超过预定的指标或某种资源已经达到饱和状态。
这种测试可以找到系统处理的极限,对系统调优提供依据。
据。
压力测试侧重压力的大小,而负载测试往往强调压力持续的时间。
调压力持续的时间
一、性能测试性能测试——强度测试什么是强度测试?
强度测试主要是为了检查程序对异常情况的抵抗能力,强度测试总是迫使系统在异常的资源配置下运行。
例如:¾当正常的用户点击率为当正常的用户点击率为“1000“1000次次/秒”,运行点击率为“2000“2000次”率为20002000次次/秒的测试用例
¾运行需要最大存储空间的测试用例¾运行导致系统崩溃的测试用例
强度测试是一种特别重要的测试,对测试系统强度测试是种特别重要的测试,对测试系统的稳定性,以及系统未来的扩展空间均具有重要的意义。
在这种异常条件下进行的测试,更容易发现系统是否稳定以及性能方面是否容易扩展。
—并发测试
性能测试—
一、性能测试
什么是并发测试?
主要指当测试多个用户并同时访问同个应用
主要指当测试多个用户并同时访问同一个应用程序、同一个模块或数据记录时是否存在死锁或其他性能问题,几乎所有的性能测试都会涉及并发测试。
一、性能测试性能测试——大数据量测试大数据量测试分为两种:
第种针对某些系统存储传输统计查询第一种、针对某些系统存储、传输、统计查询等业务进行大数据量的测试;
第种是与并发测试相结合的极限状态下的第二种、是与并发测试相结合的极限状态下的综合数据测试;此外,也可以把大数据量测试分为此外,也可以把大数据量测试分为“
“运行时大数据量测试数据量测试””与“历史大数据量测试历史大数据量测试””来进行测试用例的设计
一、性能测试性能测试——可靠性测试
在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。
例如,可以资源保持70%~90%70%~90%使用率的压力使用率的压力连续对系施加让施加让CPU CPU资源保持资源保持70%90%70%90%使用率的压力,连续对系使用率的压力,连续对系统加压统加压88个小时,然后根据结果分析系统是否稳定。
性能测试常见术语主要有并发、并发用户数量、
TPS、
、请求响应时间、事务响应时间、吞吐量、吞吐率、
请求响应时间、事务响应时间、吞吐量、吞吐率、TPS 点击率、资源利用等
点击率资源利用等
¾并发
多个用户对系统发出了请求或进行了操作,但是这些请求或操作可以是相同的,也可以是不同的。
对整个系统而言,仍然有很多用户同时对系统进行操作,因此,仍然属于并发的范畴。
¾并发用户数量
在同时刻与服务器进行交互的在线用户数据
在同一时刻与服务器进行交互的在线用户数据量,[[这些用户在最大特征是和服务器发生了交互,这量,
种交互可是单向传送数据的,也可以是双向传送数据
1000个,只要的。
例:如果一个
系统的期望用户为1000
个,只要
OA系统的期望用户为
的。
例:如果一个OA
200个并发用户就可以了。
个并发用户就可以了。
测试出系统能支持200
测试出系统能支持
¾请求响应时间(请求响应时间(TTLB:Time TTLB:Time to last byte to last byte))
请求响应时间是指从客户端发出请求到得到响应的整个过程的时间。
这个过程从客户端发送一个请求开始计时,到客户端接到从服务器端返回的响应结果计时结束。
从图可以看出,请求响应时间为“网络响应时间”和“应用程序与系统响应时间”之和,具体由7个部分组成,即(N1+N2+N3+N4)+(A1+A2+A3)
¾事务事务响应时间响应时间
事务可能是一系列请求组成事务可能是一系列请求组成,事务可能是系列请求组成系列请求组成,
,事务的响应时间主要针对用户而言要针对用户而言,,是为向用户说明业务响应时间而提出的.¾吞吐量
指在一次性能测试过程中网络上传输的数据量的总和的总和..吞吐量吞吐量//传输时间传输时间,,就是吞吐率
¾吞吐量
指在次性能测试过程中网络上传输的数据量
指在一次性能测试过程中网络上传输的数据量
就是吞吐率..
传输时间,,就是吞吐率
的总和
的总和..吞吐量
吞吐量//传输时间
¾吞吐率
通常用来指单位时间内网络上传输的数据量
通常用来指单位时间内网络上传输的数据量,,也
可指单位时间内处理的客户端请求数量..它是衡量网络可指单位时间内处理的客户端请求数量
性能的重要指标..
性能的重要指标
¾TPS(Transaction Per Second)
每秒种系统能够处理的交易或事务的数量。
它是衡量系统处理能力的重要指标。
是衡量系统处理能力的重要指标。
TPS TPS是是LR LR中重要的性中重要的性能参数指标能参数指标..
¾点击率点击率(Hit Per Second)(Hit Per Second)
每秒钟用户向HTTP请求数请求数这每秒钟用户向WEB WEB服务器提交的服务器提交的HTTP HTTP请求数。
这请求数。
这个指标是个指标是WEB WEB应用特有一个指标。
点击率越大,对服务应用特有一个指标。
点击率越大,对服务器的压力也就越大。
注意:这里的点击不是指鼠标一次注意:这里的点击不是指鼠标一次““单击单击””操因为在一次作因为在一次““单击””操作中客户端可能向服务作,因为在次单击操作中,客户端可能向服务器发出多个器发出多个HTTP HTTP请求。
请求。
¾资源利用率
资源利用率指的是对不同的系统资源地使用程
利用率、磁盘利用率等。
资源利
CPU利用率、磁盘利用率等。
资源利度,例如服务器的CPU
度,例如服务器的
用率是分析系统性能指标进而改善性能的主要依据,因此它是性能测试工作的重点。
服务器、操作系统、数
WEB服务器、操作系统、数资源利用率主要针对
资源利用率主要针对WEB
据库服务器、网络等,是测试和分析瓶颈的主要参数。
在性能测试中,要根据需要采集具体的资源利用率参数来进行分析。
数来进行分析
通过前面的内容可以看出,性能测试的很多内容都是关联的。
这就提供了一条思路:性能测试的很容都是关联的这就提供了一条思路性能测试的很
多内容可以经过一定的组织来统一进行。
统一开展性
能测试的最大好处是,可以按照由浅入深的层次对系
统进行测试,进而减少不必要的工作量,以实现节约测试成本的目的。
为此,本书提出了“全面性能测试模型”。
“全面性能测试模型”提出的主要依据是:一种类型的性能测试可以在某些条件下转化成为另一种类型型的性能测试可以在某些条件下转化成为另种类型的性能测试,而这些测试的实施方式很类似。
例如:对个行测试模个到个用户就是常规对一个网站进行测试,模拟1050
的性能测试。
当用户增加到1000乃至上万时就变成了
压力/负载测试。
如果同时对系统进行大量的数据查询操作,就包含了大数据量测试。
操作就包含了大数据量测试
性能测试分为:
¾预期指标的性能测试独务性能测试¾独立业务性能测试
¾组合业务性能测试
¾疲劳强度性能测试
¾大数据量性能测试
¾网络性能测试
¾服务器性能测试
四、性能测试的目的
¾评价系统当前性能
¾预测系统未来性能
¾寻找瓶颈,优化性能
最终的目的是最大限度地满足用户需求
五、用户会提出什么样的性能需求?
•要花多少时间做完一笔交易?
•什么样的配置提供了最好的性能?
•系统能在无错情况下能承担多大及多长时间的负载?•这些升级对系统性能影响多大?
•服务器应该选择哪些硬件与软件?
•在没有较大性能衰减的前提下,系统能够承受多大负在没有较大性能衰减的前提下系统能够承受多大负载?
•哪些因素降低交易响应时间?
六、如何满足性能需求-测试目标
用户需求我们的测试目标
要花多少时间做完一笔交易?测量对最终用户的响应时间要花多少时间做完笔交易
什么样的配置提供了最好的性能?确定最优硬件配置
系统能在无错情况下能承担多大及多
检查可靠性
长时间的负载?
这些升级对系统性能影响多大?检查软、硬件升级
服务器应该选择哪些硬件与软件?评估新产品
在没有较大性能衰减的前提下,系统
测试系统负载
能够承受多大负载?
哪些因素降低交易响应时间分析系统瓶颈
性能测试任重而道远!
谢谢!。