性能测试规范

性能测试规范
神州数码系统集成服务有限公司
2018年10月
1概述    3
1.1编写目的    3
1.2适用范围    3
2性能测试指标    3
2.1响应时间    3
2.1.1定义    3
2.1.2测试方法    4
2.1.3分析评估    5
2.2TPS(QPS)、并发用户数    7
2.2.1定义    7
2.2.2测试方法    7
2.2.3分析评估    8
2.3请求成功率    9
2.3.1定义    9
2.3.2测试方法    9
2.3.3分析评估    9
2.4CPU使用率、内存使用率、IOWAIT    9
2.4.1定义    9
2.4.2测试方法    10
2.4.3分析评估    11
2.5GC    11
2.6进程级别的资源占用    11
概述
编写目的
本文档在对性能指标的概念、测试及分析方法、评判标准以及工具的使用进行说明,旨在指导性能测试工程师更好的理解各个性能指标,并对系统的性能质量做出准确的评价和分析。
适用范围
本规范适用范围:性能测试、性能调优和性能验收活动
性能测试指标
响应时间
定义
响应时间通常是指客户发出请求到得到响应的整个过程所耗费的时间,通常被定义TTLB(TimetoLasterByte),代表从发起一个请求开始,到客户端收到响应的最后一个字节所耗费的时间。
响应时间根据所耗费的时间段可以做细致的拆解,我们可以把它拆解为三部分,系统处理时间、数据传输时间、呈现时间(Web页面特有,接口类请求无呈现时间),每个部分的时间消耗影响的因素有所不同。
呈现时间:主要是浏览器对接收到的数据渲染展示的过程,呈现时间不止于浏览器有关,和操作系统、电脑的硬件配置也有关系。
数据传输时间:请求、响应数据在网络中传输消耗的时间,和网络的时延、带宽有关系。
系统处理时间:系统接收到请求后,对请求处理,并将结果返回的时间,和系统服务器的软硬件配置有关系。
毛巾挂件
测试方法
一、quartz插件测试前提
1)前提一:性能测试中响应时间的测试,需要保持一个稳定的网络环境。
不建议在办公网络中搭建“施压设备”,不稳定的办公网络环境会影响对测试结果的评判。建议在以下两种环境下测试:
①施压设备与被测系统在同一局域网中,更能够排除网络情况对响应时间的影响,能够更准确的衡量“系统处理时间”。
②施压设备和被测系统在不同的机房环境中通过公网测试,这种场景更能准确的模拟并评估系统在生产环境中的表现。
测试工程师可以根据测试的目的,选择后两种环境进行测试。
2)前提二:确定一定的并发量来测试响应时间
最优并发用户场景、最高并发用户场景两种场景测试,响应时间的表现是不同的,最高并发场景的响应时间将会比最优并发的响应时间大得多,测试前我们需要确定我们测试的场景是最优并发还是最高并发。
二、测试步骤
1)到最高的吞吐量(TPS)。
测试前确定一个响应时间的标准(如:小于100ms),然后进行基准测试,通过虚拟并发用户数为1的方式测试,记录测试的TPS、响应时间测试结果,将该响应时间与标准比较,若大于标准响应时间,那么则说明系统有问题无法满足标准,若该响应时间小于标准时间,则继续下面的测试。
通过压力测试到最大的吞吐量:在基准测试响应时间的限制下,到系统最大的吞吐量(TPS),该状况下响应时间满足要求、吞吐量最大,可确定为“最佳并发用户数”。方法是按照一定的步长,不断增加虚拟并发用户数,直至响应时间超过限制、吞吐量不在增长、任意节点资源使用率超过要求(如:70%)。
2)负载测试:保持最大吞吐量,执行负载测试,持续30分钟,记录测试TPS、响应时间测试结果。
3)稳定性测试:保持最大吞吐量,执行稳定性测试,持续3*24小时,记录测试TPS、响应时间。
三、测试对象的分类
1)接口
接口类响应时间只包含数据传输时间、系统处理时间,不包含呈现时间,ApacheJmeter支持该类响应时间的统计,共有min、max、avg三种统计结果,分别代表最小、最大、平均值,其他的性能测试工具均有对接口类响应时间的精确统计。
2)Web页面
有3种方法可以统计Web页面的响应时间:
①浏览器抓包工具统计页面响应时间
②录屏软件抓取屏幕计算响应时间
杨木皮子③JS打点统计页面响应时间。
注意:目前还无法通过大量并发访问的采样统计页面的响应时间,在通过浏览器测试Web页面响应时间时,要确保通过Jmeter对系统相对应接口保持一定压力的并发用户访问(通常在最优并发下测试)。
分析评估
一、Web页面响应时间分析遵循258原则
在互联网上对于用户响应时间有一个普遍的标准(2/5/8原则),一般认为响应时间超过5s是系统是需要优化,如果超过8s是不可接受的。
2s之内响应被认为非常有吸引力的用户体验。
清水植物黑发●5s之内响应被认为比较不错的用户体验。
8s之内响应被认为非常糟糕的用户体验。
超过8s没有响应,用户通常认为请求失败。
需要特殊说明的一点,对于用户来说,响应时间是否被接受带有一定的主观彩,例如一个系统报表的功能,每个月才会有用户使用一次,那么每次花费1个小时,用户是可以接受的,但是一个常用的登录按钮提交1分钟后才返回登录成功,我们也难以接受。因此响应时间的“长”和“短”并没有绝对的定义,合理的响应时间取决于用户实际需求,而不能依据测试人员的设想或者标准的硬性规定。
二、外用贴剂Web页面响应时间分析评估时需要考虑有无浏览器缓存的两种情况
Web页面响应时间测试,要分为浏览器有缓存和无缓存的两种情况(无缓存的情况由于资源的下载响应时间会稍长),一般通过有浏览器缓存的场景的结果表现来评估响应时间对用户体验的影响。
三、接口类响应时间,参考系统需求规格定义评估
最优并发情况下,性能测试结果平均响应时间不得高于系统需求规格定义。
建议:需求规格的定义,单接口响应时间应小于100ms。
响应时间的标准一般定义:99.9%响应时间必须在100ms以下(非平均值,99.9%取样响应时间均在100ms以下)或者平均响应时间在100ms以下,目前工具只能统计平均响应时间指标。
四、响应时间与历史版本比较
当前系统实测响应时间的指标不得高于历史版本的实测结果。
注意:两者的测试结果的比较,一定是在相同条件下测试的结果(环境对性能的影响较大)。
五、参考同类系统功能的响应时间夜光路面
对于新开发的系统,在没有生产环境数据、历史版本参考的情况下,可参考其他类似系统的响应时间的实测结果,对比本系统实测的结果,经过产品经理、开发、运营运维共同评审确定该系统的性能需求标准,并按照达成一致的需求标准进行评估。
TPS(QPS)、并发用户数
定义
TPS:每秒事务数,指系统每秒能够处理的事务数量(一个事务可能是有多个请求组成)。
QPS:每秒查询率,只系统每秒能够处理的查询(通常指一个request请求)数量。
并发用户数:在同一时刻(任一时刻)与服务器进行交互(服务器正在处理)的在线用户的数量。对于并发用户数避免两种错误的理解,一种错误的理解是把并发用户数理解为系统注册用户数,还有一个错误的理解是把并发用户数理解为系统在线用户数。
测试方法
1)到稳定运行的最高的吞吐量(TPS)。
测试前确定一个响应时间的标准(如:小于100ms),然后进行基准测试,通过虚拟并发用户数为1的方式测试,记录测试的TPS、响应时间测试结果,将该响应时间与标准比较,若大于标准响应时间,那么则说明系统有问题无法满足标准,若该响应时间小于标准时间,则继续下面的测试。
通过压力测试到最大的吞吐量:在基准测试响应时间的限制下,到系统最大的吞吐量(TPS),该状况下响应时间满足要求、吞吐量最大,可确定为“最佳并发用户数”。方法是按照一定的步长,不断增加虚拟并发用户数,直至响应时间超过限制、吞吐量不在增长、任意节点资源使用率超过要求(如:70%)。

本文发布于:2024-09-23 05:22:26,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/249747.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时间   响应   测试   系统   并发
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议