性能测试

上一篇 / 下一篇  2016-12-08 16:09:07 / 个人分类:谈测试

1.响应时间

对请求做出响应所需要的时间。响应时间=呈现时间+系统响应时间。

其中:

(1)呈现时间:取决于数据在被客户端收到响应数据后呈现页面所消耗的时间。

(2)系统响应时间:应用系统从请求发出开始到客户端接收到数据所消耗的时间。

从设计角度考虑,更好的用户体验是,前端在等待数据结果时,提供进度条或逐步显示数据。

进一步分解响应时间:网络传输时间+应用延迟时间(Web服务器延迟时间+DB延迟时间)。

对于响应时间,其标准不一。一般页面的响应时间,2秒是非常有吸引力,5秒是比较不错的,10秒则是忍受的极限。视具体情况具体设置。

2.并发用户数

系统并发用户数:同一时间内访问系统的用户数。针对的是服务器最大承载量。关注的是瞬间最大访问量。

业务并发用户数:从用户角度来说,在相当长的一段时间内,都会有基本固定数量的用户访问系统

其中:

(1)系统用户数:使用该系统的用户总数。

(2)在线用户数:同时在线的用户数。

在做并发测试的时候,一般会采取两种方法:

(1)是在并发数一定的情况下,按业务不同进行测试(业务一,多少人一起使用,什么时候开始使用,使用多长时间)。这种方式更多的是业务并发测试。

(2)是在并发数一定的情况下,只做单纯一样的操作(查询、修改、添加、删除)。这种方式更多的是系统并发测试。

估算并发用户的公式:C=nL/T

其中:C为平均并发用户数;n为login session的数量;L为login session的平均时间长度;T为考察的时间段长度。

峰值并发数: m=C+3*

假设login session符合泊松分布。

比如:OA系统,共3000个用户,每天大约有400个用户访问,对一个用户来说,每天在线时间为4小时,而每天工作时间为8小时。则平均的并发用户为C=400*4/8=200,并发用户峰值为242。

实际应用过程中,要考虑时间的细粒度或结合业务峰值和谷值来更精确的估算并发用户。

更一般的公式是:C=n/10,即以每天访问系统用户数的10%作为平均的并发用户数

                Cm=r*C  r为调整因子,取值一般为2~3

对web服务器的日志分析,能得到更为精确的最大并发用户访问数

3.吞吐量

单位时间内系统处理的客户请求的数量。体现软件系统的性能承载能力。

一般描述:请求数/秒或页面数/秒。

业务角度来说,访问人数/天或处理的业务数/小时。

网络角度:字节数/天==网络流量。

作用:

(1)用于协助设计性能测试场景,以及衡量性能测试场景是否达到了预期的设计目标;

(2)用于协助分析性能瓶颈。比如以字节数/秒主要反映受网络基础设施、服务器架构、应用服务器制约;以单击数/秒表示主要受应用服务器和应用代码的制约。

在未遇到性能瓶颈时,计算公式:F=Nvu*R/T。

4性能计算器

性能计算器Counter:描述服务器或操作系统性能的一些数据指标。

资源利用率:系统各种资源的使用状况。

Nvu表示虚拟用户的个数(Virtual Users);R表示每个VU发出的请求(单击)数量;T表示测试时间。

5.思考时间

思考时间Think Time:从业务角度来说,指用户在进行操作时,每个请求之间的间隔时间。

思考时间与迭代次数、并发用户数和吞吐量之间存在一定的关系。

计算公式:R=T/Tt

R:每个用户发出的请求数;T为测试时间;Tt为思考时间。

计算思考时间的一般步骤:

(1)首先计算出系统的并发用户数;

(2)统计出系统平均的吞吐量

(3)统计出平均每个用户发出的请求数量

(4)根据上面公式计算出思考时间。

如果测试目的是为了验证应用系统具有预期的能力,即能力验证,则尽量模拟用户真实的思考时间;如果是更一般的研究,了解系统在压力下的性能水平或了解系统承受压力的能力,即规划能力,则可考虑0思考时间。



TAG: 性能测试

 

评分:0

我来说两句

Open Toolbar