性能测试学习笔记

上一篇 / 下一篇  2010-03-17 22:14:34 / 个人分类:性能测试

一 性能指标

1.不同角色的人的眼中性能的关注点不同,比如响应时间

   1) 用户感受到的响应时间:如果采用一种优化的数据呈现策略,当少部分数据返回后就立刻将数据呈现在用户面前,那么用户感受到的时间会小于实际需要的响应时间。
   2)管理员关注的性能:资源利用率,系统可扩展性,系统容量,稳定性
   3)开发视角:系统构架,数据库设计,代码。
 
2 .响应时间:对请求作出响应所需要的时间。分为呈现时间和系统响应时间。
     呈现时间:数据在被客户端收到到响应数据后呈现页面所消耗的时间。
     系统响应时间:从请求发出到客户端接受到数据所消耗的时间。
 
     一般都直接用系统响应时间=响应时间。
     响应时间=网络传输时间+应用延迟时间(数据库延迟+服务器延迟)
 
     时间标准:2、5、10:2s 非常好。5s: 不错。10s:上限

 3.并发用户数:
      业务并发用户数:同时在线。
      系统用户数:可能使用的人数。
      服务器的并发访问数:同时对服务器发出请求。读日志来确定
      测试人员一般关心业务并发用户数,所以=并发用户数
 
4.吞吐量:单位时间系统处理的客户请求的数量。页面数每秒。
      对交互式系统,用响应时间和并发用户数来规划性能;非交互式系统,用吞吐量合适。吞吐量的限制是性能瓶颈的重要表现形式。
      吞吐量F=VU×R每个VU发出的请求数除以测试时间
 
5.性能计数器:是描述服务器或操作系统性能的一些数据指标:如内存数,进程时间。常用资源利用率进行比较,结合响应时间变化曲线,系统负载曲线
 
6. 思考时间:用户进行操作时,每个请求之间的间隔时间。
         每个用户发出的请求数R = 时间除以思考时间
  如何得出思考时间:1.计算系统并发用户数;2.统计系统平均吞吐量;3,统计平均每个用户发出的请求数;
 
 二 测试方法:
   1.RBI(Rapid bottleneck Identify):基于以下一些事实:发现的80%的系统的性能瓶颈都是由吞吐量制约;并发用户数和吞吐量瓶颈之间存在一定的关联;采用吞吐量可以更快速定位问题。
   首先访问服务器上的“小页面”和“简单应用”,从应用服务器、网络等基础的层次上了解系统吞吐量的表现;其次选择不同的场景,设定不同的并发用户数,使其吞吐量保持基本一致的增长趋势,通过不断增加用户数和吞吐量观察系统性能表现。RBI将性能瓶颈的定位按照一种自上而下的分析方式进行分析,首先确定是由并发还是由吞吐量引发的性能表现限制,然后从网络、数据库、应用服务器和代码本身4个环节
 
三 性能测试分为:
   1.性能测试:验证系统是否有系统宣称具有的能力。
   2.负载测试:在被测系统上不断加压,直到性能指标超过预定指标或资源饱和。找出处理极限。
   3.压力测试:检查系统处于压力情况下的表现。加压使资源使用保持在一定的水平,检查此时有无错误信息产生以及响应时间。一般用于测试系统稳定性。“cpu 75%,内存70%”
   4.配置测试:通过对软硬件环境的调整了解不同环境对性能的影响程度,从而找到系统各项资源的最优分配原则。
   5.并发测试:发现并发访问的问题。内存泄漏、线程锁和资源争用。
         内存问题:内存泄漏,太多临时对象,太多超过设计生命周期的对象
  数据库问题:死锁,长事务
  线程进程问题:同步失败?
  其他:是否出现资源争用导致的死锁;是否没有正确处理异常;
  需要一些工具进行代码级别的检查和定位:DevParter,JProfile,JProbe
   6.可靠性测试:通过给系统加载一定的业务压力(资源在70% 到90%的使用率),让应用持续运行运行一段时间,测试系统在这种条件下是否能稳定运行。目的验证系统是否支持长时间稳定运行。一般处于峰值压力下,进行2到3天的稳定性测试。
   7.失效恢复测试:针对有冗余备份和负载均衡的系统设计的。验证在局部故障下,系统可否继续使用。
 

TAG:

 

评分:0

我来说两句

Open Toolbar