欢迎来到天天文库
浏览记录
ID:38256108
大小:40.00 KB
页数:5页
时间:2019-06-07
《软件性能测试》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、软件性能测试 软件性能测试的目的: 为了验证系统是否达到用户提出的性能指标,同时发现系统中存在的性能瓶颈,起到优化系统的目的。软件性能测试的基本概念: 软件性能测试,英文是PerformanceTesting。 软件性能测试是在交替进行负荷和强迫测试时常用的术语。理想的“软件性能测试”(和其他类型的测试)应在需求文档或质量保证、测试计划中定义。软件性能测试一般包括负载测试和软件压力测试。 通常验证软件的性能在正常环境和系统条件下重复使用是否还能满足性能指标。或者执行同样任务时新版本不比旧版本
2、慢。一般还检查系统记忆容量在运行程序时会不会流失(memoryleak)。比如,验证程序保存一个巨大的文件新版本不比旧版本慢。 软件性能测试的几种方法 1.SEI负载测试计划过程 目标:产生一个清晰、好理解、可验证的负载测试计划 内容:关注6个区域:目标、用户、用例、生产环境、测试环境、测试场景 工具:IBM、HP、OpenSource工具都支持。需有文档配合 2.RBI方法 目标:快速识别性能瓶颈 内容:重点测试“吞吐量”指标,因为RBI认定80%的系统性能瓶颈由吞吐量造成。 按照网络
3、、硬件、数据库、应用服务器、代码的顺序自上而下分析性能 工具:IBM、HP、OpenSource工具都支持。需使用分析模块、根据Weblogic、Oracle区别有专门的工具实现RBI。 3.性能下降曲线分析法 目标:性能随着用户数的增加而出现下降趋势的曲线分析、查看性能下降的环境点与上下文。确定性能阀值。 内容:通过单用户区域、性能平坦区域、压力区域、性能拐点进行监控和分析。 工具:IBM、HP、OpenSource工具都支持。IBM报表功能更强。 4.HP(LoadRuner)性能分析法
4、 特点:侧重于该厂商的性能分析方法、主要体现在需求收集、VU脚本。 软件性能测试的几个阶段: 对于互联网应用软件,性能是其质量的一个非常重要的组成部分。作为解决软件性能问题的重要手段,软件软件性能测试已经广为人们所熟悉,并受到很高的关注。一般而言,软件性能测试都是在项目的后期才开展,被测试的对象通常是已经具备一定稳定性的产品。而实际上,软件性能测试应贯穿于整个软件生命周期中,和功能测试一样,软件性能测试也分为几个阶段。 软件生命周期与软件性能测试 不论哪种软件生命周期模型,需求分析、设计、编码
5、、测试和运行维护这几个阶段都是其中的基本要素,只是在不同的软件生命周期模型中可能迭代、合并、拆分或重组这几个阶段,在此不做过多的描述。与其他几个阶段相对应,测试从软件开发过程按阶段可以划分为:单元测试、集成测试、系统测试,在其他的书上可能还能见到诸如确认测试、验收测试等名词,但是前3种测试确实是最基本的测试活动,而其他的测试活动只是在某些软件开发过程中会发生。 值得注意的是,通常在谈论单元测试、集成测试和系统测试时,其实仅仅谈论的是不同阶段的功能测试;而当讨论软件性能测试时,绝大多数的情况是,一个已经
6、开发完毕或基本开发完毕的软件,测试人员用一种或几种软件性能测试工具,以尽量模拟真实用户行为的方式对该软件进行并发操作,收集并比较不同场景的结果,然后对软件的性能进行分析,这个活动通常发生在系统测试阶段,甚至更往后的阶段,如运行维护阶段。 一直以来,软件性能测试跟单元测试、集成测试似乎都是绝缘的。可是它们真的应该是绝缘的吗?没有任何理由可以说明软件性能测试跟单元测试、集成测试无关,除非你认为“这太难了,我不会做”。 软件性能测试的几个术语 1.响应时间 我把“响应时间”的概念确定为“对请求作出响应
7、所需要的时间”,把响应时间作`为用户视角的软件性能的主要体现。响应时间划分为“呈现时间”和“系统响应时间”两个部分。 其中“呈现时间”取决于数据在被客户端收到响应数据后呈现页面所消耗的时间、而“响应时间”指J2EE应用服务器从请求发出开始到客户端接受到数据所消耗的时间。软件性能测试一般不关注“呈现时间”,因为呈现时间很大程度上取决于客户端的表现。在这里我们没有使用很多软件性能测试定义中的概念——“系统响应时间”定义为“应用系统从请求发出开始到客户端接收到最后一个字节数据所消耗的时间”,没有使用这种标准
8、的原因是,可以使用一些编程技巧在数据尚未完全接收完成时进行呈现来减少用户感受到的响应时间,对于HNDLZCGLXT的这个项目中,我们针对C/S系统采用前者标准,对于B/S我们依然采用后一种标准。 2.并发用户数 我把“并发用户数”与“同时在线数”进行区别对待,我的“并发用户数”的标准是:并发用户数取决于测试对象的目标业务场景,因此,在确定这个“并发用户数”前,必须(必要)先对用户的业务进行分解、分析出典型的业务场景(也就是用户最常使用、
此文档下载收益归作者所有