web性能测试基础(一)

上一篇 / 下一篇  2007-06-18 11:31:07 / 个人分类:性能测试

1.1基本概念

并发用户:用户并发一般发生在使用比较频繁的模块中,而且遇到异常通常都是程序的问题。51Testing软件测试网,I\1k;n|P4q

用户并发数量:在线用户数量是计算并发用户数量的主要依据之一。=使用系统的用户数量*(5%~20%)

+BQT4`_xo0

并发主要针对WEB服务器而言,是否并发的关键是看用户的操作是否对服务器产生了影响。

E io3K5HQ3Aj0

吞吐量:一次性能测试过程中网络上传输的数据量的总和。51Testing软件测试网2rM#C1q T

吞吐率:吞吐量/传输时间,单位时间内网络上传输的数据量,也可以指单位时间内处理的客户端请求数量。吞吐率用“请求数/秒”或者“页面数/秒”来衡量。

!y+D-WqK:s0

点击率:每秒钟用户向web服务器提交的HTTP请求数。点击率越大,对服务器的压力也越大。重要的是分析点击时产生的影响。51Testing软件测试网0pl~}+O[~!~

点击不是指鼠标的一次“单击”操作,因为在一次“单击”操作中,客户端可能向服务器发出多个HTTP请求。51Testing软件测试网m0ryE&F

1.2WEB性能测试种类

压力测试:确定一个系统的瓶颈或者不能接收用户请求的性能点,来获得系统能提供的最大服务级别的测试。

4P't]M gA"j:@4z0

负载测试:在被测系统上不断增加压力 ,直到性能指标达到极限,响应时间超过预定指标或者某种资源已经达到饱和状态。这种测试可以找到系统的处理极限,为系统调优提供依据。

tky-O$gQ0

大数据量测试:针对某些系统存储、传输、统计查询等业务进行大数据量的测试。51Testing软件测试网iq8^8a SI1{0|

配置测试:通过测试找到系统各资源的最优分配原则。

#Un4lVJ+H d0

可靠性测试:可以施加cpu资源保持70%-90%使用率的压力,连续对系统加压运行8小时,然后根据结果分析系统是否稳定。即加载一定压力的情况下,使系统运行一段时间。

](r8K6})@z6Q0

并发测试:多以发现一些算法设计上的问题。

K+hr+J,nt9P5mL0

性能测试以用户并发测试为主的测试。

9]/d `5Y O'\/_t0

性能测试主要是为了发现软件问题和硬件瓶颈。51Testing软件测试网be/ii`U^

对于性能方面给系统留有30%左右的扩展空间即可。                                    51Testing软件测试网w f ?,@)I} Xu i:f*p\

1.3Web全面性能测试模型

1.3.1预期指标的性能测试

主要指需求分析和设计阶段提出的一些性能指标。51Testing软件测试网Q%c&o5W#g.k:]*?(}

针对每个指标都要编写一个或者多个测试用例来验证系统是否达到要求。51Testing软件测试网 GS)b+j\4Oc

预期指标的性能测试用例通常以单用户为主,如果涉及并发用户内容,则归并到并发用户测试用例中进行设计。51Testing软件测试网D0U%b k/t4v|A'yem w

1.3.2并发性能测试

选择具有代表性、关键的业务来设计用例,并且用户的设计应该面向“模块”

Qg _??8C4x$F T0

用户并发性能测试分为:独立核心模块并发性能测试,组合模块并发性能测试51Testing软件测试网`4s@7q}8L

独立核心模块并发:完全一样功能的并发测试;完全一样操作的并发测试;相同/不同的子功能并发。

f6O __ l:s!c0

针对独立核心模块用户并发性能的测试用例设计,可发现一些核心算法或者功能方面的问题,如一些多线程、同步并发算法在单用户模式下测试是很难发现问题的,通过模拟多用户的并发操作,更容易验证其是否正确和稳定。51Testing软件测试网@*q1xv1X

核心模块测试一般属于基本的性能测试,它较多地关注模拟的“功能”,一般不会对服务器进行测试。51Testing软件测试网 }!o@0L]6^&Czh.cXC

 51Testing软件测试网k$[.CZt

组合模块并发:具有耦合关系的核心模块进行组合并发测试;彼此独立的、内部具有耦合关系的核心模块组的并发测试;基于用户场景的并发测试。

~1[,B*n6If8O0

组合模块测试一般发现接口方面的功能问题,并尽早发现综合性能问题。51Testing软件测试网&?'Sfdv_*m[m+i*c2@

在实际中,各种类型的用户都会对应一组模块,相当于不同的业务组在并发访问系统,要充分考虑实际场景,如话费管理系统中的每月10日左右的收费高峰等场景。51Testing软件测试网vr$S(i*]u i#w,Ys

在编写组合模块用户并发性能测试用例时,不但要考虑用户使用场景,还要注意并发点的运用,并发点是指一定数量的用户开始执行同一功能或者操作的时间点,一组测试场景通常包含多个并发点,从而实现了核心模块同一功能或者操作的真正并发。51Testing软件测试网$k\6f+I,o

 51Testing软件测试网?!h2F9[ @}eI

1.3.3独立业务性能测试

独立业务实际是指一些核心业务模块对应的业务。这些模块通常具有功能比较复杂,使用比较频繁,属于核心业务等特点。主要测试这类模块和性能相关的一些算法、还要测试这类模块对并发用户的响应情况。51Testing软件测试网#Z9O IH-U q

用户并发测试是核心业务模块的重点测试内容。

yP7d@O%A0

1.3.4组合业务性能测试

是最接近用户实际使用情况的测试,也是性能测试的核心内容。

%r'@qfJ3G Z0

组合并发的突出特点是根据用户使用系统的情况分成不同的用户组进行并发,每组的用户比例要根据实际情况来进行匹配。51Testing软件测试网"Oa2Lh^E1Y9pL[

用户并发测试是组合业务性能测试的核心内容。“组合”并发的突出特点是根据用户使用系统的情况分成不同的用户组进行并发,每组的用户比例要根据实际情况来进行匹配。51Testing软件测试网2D2~;D tY[

1.3.5网络性能测试

为准确展未带宽、延迟、负载和端口的变化是如何影响用户的响应时间的。主要是测试应用系统的用户数目与网络带宽的关系。51Testing软件测试网jQY `p

调整性能最好的办法就是软硬相结合。51Testing软件测试网x-Pf7xMr/Gb

1.3.6大数据量测试

主要是针对对数据库有特殊要求的系统进行的测试,主要分为三种:51Testing软件测试网.\:pxV!E{i}(an

1.实时大数据量:模拟用户工作时的实时大数据量,主要目的是测试用户较多或者某些业务产生较大数据量时,系统能否稳定地运行。

'utM3K8u-G0

2.极限状态下的测试:主要是测试系统使用一段时间即系统累积一定量的数据时,能否正常地运行业务51Testing软件测试网 n_-YWb A

3.前面两种的结合:测试系统已经累积较大数据量时,一些实时产生较大数据量的模块能否稳定地工作。

L-c4` a'o N.X"M l0

大数据量测试用例的设计:1,历史数据引起的大数据量测试和2运行时大数据量测试

!b @kz8X0

首先确定系统数据的最长迁移周期和选择一些前面的核心模块或者组合模块的并发用户测试用例作为其主要内容即可.

&} ?"owG5Q7b0k4{+y\-KK0

1.3.7服务器性能测试

性能测试的主要目的是在软件功能良好的前提下,发现系统瓶颈并解决,而软件和服务器是产生瓶颈的两大来源,因此在进行用户并发性能测试,疲劳强度与大数据量性能测试时,完成对服务器性能的监控,并对服务器性能进行评估。

)l&T {JM Dy2o0

服务器性能测试用例设计就是确定要采集的性能计数器,并将其与前面的测试关联起来。

W[,_^-CR0

1.3.8设计性能测试用例注意的原则:

可以满足预期性能指标测试用例要求的,就没有必要设计更多的内容,因为用例越多,执行的成本也越高。

jS&sg+do+}c0

一定要服从整体性能测试策略,千万不能仅从技术角度来考虑设计“全面”的测试用例,“全面”应该以是否满足自己的测试要求作为标准。

A2V9^$O6Uar0

适当裁剪原则

?2Bg%N@3rHp(]0

只有根据实际项目的特点制定合理的性能测试策略、编写适当的性能测试用例,并在测试实施中灵活地变通才可以做好性能测试工作。51Testing软件测试网LB9L W-P+Lx


TAG:

丽仙的个人空间 引用 删除 HAOYUNXIANXIAN   /   2010-02-01 11:42:12
测试初长成 引用 删除 投缘   /   2010-01-29 11:51:39
不错
 

评分:0

我来说两句

Open Toolbar