- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件性能与性能测试教程 第 2 部分
中国软件评测中心 陈 兵
本系列教程对软件性能与性能测试这个主题进行了较为全面的介绍和分析。教程分为
三个部分:在第1 部分,讲解了软件性能的基本知识,介绍了常用的软件性能指标,在分析
影响软件性能因素的同时,以实例清晰讲解了如何提高软件的性能及性能的可扩展性等问
题;在第2 部分,首先给出了性能测试的基础知识,然后侧重于从性能工程的角度提出开展
性能测试工作的流程,和进行性能测试工作的策略,以及如何分析性能测试数据;在第 3
部分,从开发的(而不是第3 方测试)角度,以实例为引导,一步一步地分析讲解在开发环
境下进行性能测试的策略、方法和手段(采用的工具)。
本系列教程可以用作软件开发人员、软件测试人员、软件项目经理、软件质量人员和
需要了解软件性能测试的各级软件管理人员的工作参考手册,也可作为有志于软件开发和软
件性能测试领域人员的参考资料。...
1. 软件性能测试软件性能测试
软件性能测试软件性能测试
各种软件在系统实施过程中,需要满足客户的一些特殊要求。如果软件系
统没有经过测试和优化,软件系统将无法满足用户的需求,还会给软件在实际应
用中带来很大的风险。一些公司缺乏必要的测试手段和工具知识导致测试不彻
底,其中性能测试是整个开发、测试过程中一个重要方面 。
(1)什么是性能测试
性能测试用来保证产品发布后系统的性能满足用户需求。性能测试在软件
质量保证中起重要的作用。通俗地说,性能测试主要是通过自动化的测试工具模
拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行的一种测试。
性能测试包含三种类型的测试:
负载测试
负载测试是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增
加时,系统组成部分的相应输出项,例如通过量、响应时间、CPU 负载、内存
使用等如何决定系统的性能,例如稳定性和响应等。 负载测试通常描述一种特
定类型的压力测试,即增加用户数量以对应用程序进行压力测试。
通俗的说,这种测试方法就是模拟真实环境下的用户活动,在特定的运行
条件下验证系统的能力状况。在项目中,通常是测试现有负载和预期负载的负载
压力测试,进行对比分析。
压力测试
压力测试通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能
提供的最大的服务级别的测试。通俗地讲,压力测试是为了发现在什么条件下您
的应用程序的性能会变得不可接受。在压力测试中,可以采取两种不同的压力情
况--用户量压力测试或数据量压力测试。
疲劳强度测试
通常是采用系统稳定运行情况下能够支持的最大并发用户数或 者日常运
行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标
来确定系统处理最大工作量强度性能的过程。
(2 )性能测试的目的
为什么要进行性能测试呢?其目的是验证软件系统是否能够达到用户提出
的性能指标,同时发现软件系统中存在的性能瓶颈,优化软件,最后起到优化系
统的目的。主要包括以下几个方面
1)评估系统的能力,测试中得到的负荷和响应时间数据可以被用于验证所
计划的模型的能力,并帮助作出决策。
2 )识别体系中的弱点:受控的负荷可以被增加到一个极端的水平,并突破
它,从而修复体系的瓶颈或薄弱的地方。
3 )系统调优:重复运行测试,验证调整系统的活动得到了预期的结果,从
而改进性能。
4 )检测软件中的问题:长时间的测试执行可导致程序发生由于内存泄露引
起的失败,揭示程序中的隐含的问题或冲突。
5 ) 验证稳定性(resilience )可靠性(reliability ):在一个生产负荷下执行
测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。
(3 )压力测试能够发现缺陷
进行压力测试,您有希望找到很多种用其他测试方法更难发现的错误。主
要有两种错误类型:
内存泄漏(内存泄漏(Memory leak ):):一种极难检测的现象 (或者说一般在单
文档评论(0)