天行健,君子以自強不息;地勢坤,君子以厚德載物---天道酬勤---邁向測試高工

切莫忽视性能测试

上一篇 / 下一篇  2008-06-13 10:53:07 / 个人分类:咖啡轉載

;a;g`&c%Pw0  性能测试的重要性随着网络发展更凸显重要性,由于网络环境、数据库环境、应用服务器环境、系统平台技术等的复杂性和多样性,难以预知的用户负载和愈来愈复杂的应用程序使软件性能非常难于控制。虽然,改善系统性能不是单单依靠性能测试就能完成的,但性能测试至今仍是控制性能有效的手段。51Testing软件测试网;St-E*`2l'B"Us

&{H9e k,Y0Ip0  什么是性能测试51Testing软件测试网k+GWky`hA

/slZ8yC y0  性能测试主要是通过自动化测试工具模拟多种正常、峰值及异常负载来对系统的各项性能指标进行测试。一般来说,性能测试可概括为三个方面:在客户端性能的测试、在网络上性能的测试和在服务器端性能的测试。通常情况下,三方面有效的结合可以达到对系统性能全面的分析和瓶颈的预测。

O;{4eOD"e],T;C0

iO#y-t @dF8j0  性能测试的基本策略是自动负载和压力测试。通过在一台或几台PC机上模拟成百上千的虚拟用户同时执行业务的情景,对应用程序进行测试,同时记录下每一事务处理的时间、服务器峰值数据、数据库状态等。它主要包括并发性能测试、疲劳强度测试、大数据量测试和速度测试等,其中并发性能测试是重点。51Testing软件测试网#| dJ1_}&UUL)_ g

51Testing软件测试网g G[/yG6S b%y'ja

  (1)并发性能测试

,w4^J*tn$?7CR&XK-J0

3V$B#\7a dc b g@:L0  并发性能测试是一个负载测试和压力测试的过程,即逐渐增加负载,直到系统出现瓶颈或者不能接收更多负载,通过综合分析执行指标和资源监控指标来确定系统并发性能的过程。例如当负载压力逐渐增加时,通过检测系统的相应输出如通过量、响应时间、CPU负载、内存使用等来决定系统的性能。

g;bx@`a w A0

)m @e8N[0  并发性能测试一般不采用手工方式,而是利用工具采用自动化方式进行。在测试时常常需要模拟真实环境测试,以考察在真实环境中的表现,这样测试出来的数据才有实际意义。目前,成熟的并发性能测试工具有很多,选择的依据主要是测试需求和性能价格比。51Testing软件测试网AQ*x4_D-~#\ze+bs%A

7S T5y$_yXl`bR0  (2)疲劳强度测试51Testing软件测试网S!W2c2p%t0t

(T'du$j)B*Tt0  疲劳测试是采用系统稳定运行情况下能够支持的最大并发用户数,持续执行业务一段时间,通过综合分析执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。

p1aZ{hNal051Testing软件测试网:sP} S"cy9V%o.S

  疲劳强度测试可以采用工具自动化的方式进行测试,也可以手工编写程序测试,其中后者占的比例较大。一般情况是以服务器能够正常稳定响应请求的最大并发用户数进行一定时间的疲劳测试,获取执行指标数据和系统资源监控数据。如出现错误导致测试不能成功执行,则及时调整测试指标,例如降低用户数、缩短测试周期等。还有一种情况的疲劳测试是对当前系统性能的评估,用系统正常业务情况下并发用户数为基础,进行一定时间的疲劳测试。51Testing软件测试网3i8iU@WEn:l0\

g T&a(BO8}YF0(3)大数据量测试

?[g4O q0

mR[|%p0  大数据量测试可以分为两种类型:一是针对某些系统存储、传输、统计、查询等业务进行大数据量的独立数据量测试;二是与压力性能测试、负载性能测试、疲劳性能测试相结合的综合数据量测试方案。大数据量测试的关键是测试数据的准备,可以依靠工具准备测试数据。51Testing软件测试网GF)z*Q&_s

6_ uT#{,U&C P0  进行性能测试的前提条件

*XI7GJ3i6x7c0

p bH6iIn4E0  在任何性能测试活动开始前,软件应用程序必须达到性能测试接受标准。如果应用程序没有达到这些标准,则不应该进行性能测试,否则就是浪费时间和成本。进行性能测试的前提条件包括:

f2j&D|o-b051Testing软件测试网 yZ\Y"g$vESW

  (1)已通过单元测试能力51Testing软件测试网_zPte l#y

51Testing软件测试网I+g.D7yc

  在性能测试前所有应用程序必须先通过全面的单元测试策略,同时所附带的可被执行的单元测试代码应是完整和有效的。如果单元测试因为应用程序中的错误或缺少单元测试代码,那么应用程序则不应该进行性能测试。51Testing软件测试网Twm(e Q

O*~3Rlq#O}q#m6Y0  (2)已通过低负载级别能力

^ mt[3h b0

r$vJ-k rFe0  在单用户和10个用户的低负载级别上,应用程序应该能在正常的计算时间达到合理的性能。如果应用程序无法在低负载级别正常运行,那么它肯定无法在更高负载级别正常运行。这时,开始性能测试将会浪费时间。

t2L0K6hkNop}mM051Testing软件测试网9v%["M&v+}2W-u

  (3)已准备好测试数据

;Q8T? ZEw Yt051Testing软件测试网E)]E7p'vMYKq^zSCu

  在性能测试期间执行应用程序所需的数据必须先准备好或已详细描述,以使性能测试小组能够建立与生产环境尽可能接近的模拟数据,要确保测试数据必须是真实、一致和完整的,任何与真实环境相差太远的测试数据都是无用的性能测试行为。51Testing软件测试网8N$h3e1K(nG6\E


TAG:

 

评分:0

我来说两句

日历

« 2024-05-12  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 6490
  • 日志数: 14
  • 图片数: 1
  • 建立时间: 2008-05-13
  • 更新时间: 2008-09-08

RSS订阅

Open Toolbar