自动化性能测试(3)

发表于:2015-08-04来源:uml.org.cn作者:不详点击数: 标签:性能测试
基准测试被设计来测量和对比理想情况下的各种机器类型,环境,或应用的版本。当系统经过扩展性测试后,执行这些测试可以帮助了解不同体系结构的影

  基准测试被设计来测量和对比理想情况下的各种机器类型,环境,或应用的版本。当系统经过扩展性测试后,执行这些测试可以帮助了解不同体系结构的影响。

  渗透测试被设计用于在长时间的负载下检测系统的执行情况。

  峰值测试被设计用于模拟系统在峰值负载下运行一段时间来保证应用和其硬件可以在合理的时间段内支持高负载

  分析,诊断,和调整

  如何确定性能测试的 ROI

  良好的性能测试的ROI有双重意义:

  缓解风险保证项目达到正确的扩展性和性能。缓解风险是标准的性能测试好处。大多数自动化性能测试的用户可以向开发部门或项目团队反馈清晰的,可量化的信息,预测系统在生产环境的扩展和性能情况。

  性能最优化以量化方式改善系统的性能,通过测量改进的最终用户响应时间,或者通过减少所需的全面硬件基础设施

  如何优化性能

  在性能测试后的阶段中,提供了很多有利于改善系统性能的有价值信息。

  监测性能测试期间的监测显示出基础设施中每一层发生的情况,在性能测试期间提供了数据库服务器,Web服务器,应用服务器,或单独的应用和过程的更加清晰的记录。例如,这些信息可以快速表明应用服务器的CPU使用率在200用户的时候达到100%,而不能达到300用户的目标。这意味着要么需要更多的应用服务器容量要么需要优化应用自身。

  分析:在负载测试完成之后,用户可以关联分析—例如创建虚拟用户对抗CPU或应用服务器CPU到Web服务器—来测定应用行为更深一层次的信息。

  调整:许多公司在应用部署的前中后期使用压力测试工具来实施自动化性能测试。同时可以采用其它工具允许用户通过修改系统配置设置系统地识别,隔离,和解决基础设施的性能瓶颈。通过反复实施解决基础设施的瓶颈的过程,用户可以建立当前最优的黄金配置。

  诊断:当前的技术可以允许,性能工程师在负载条件下对各个层,组件和SQL语句如何影响整个业务过程性能有一个统一的认识。诊断时,性能工程师使用诊断工具可以看到最终用户事务当前涉及到的所有组件。此外,用户也可以看到每一个组件花费的时间和被调用的次数。依靠这些信息,项目和QA经理可以定位到最重要的Web,应用,和数据库服务器瓶颈,集中资源来改善用户体验。它为开发者提供了如此有效的实际数据以至于用户把它称为“性能测试的圣杯。”

  良好的性能测试涉及到哪些人?

  项目经理

  协调多个性能项目,管理测试进度,获得必要的硬件或软件,处理资源和资金问题。

  业务分析师

  负责从业务的角度对系统性能作出评价和结论。帮助开发性能测试中的混合事务和期望时间。

  性能经理

  负责协调性能支持团队的工作,作为小组的联系人。负责管理日常性能工作。

  性能测试人员

  负责创建和执行自动测试和收集测试结果。

  应用构造师

  接受负载测试的诊断和分析的信息,来最优化应用性能和解决性能问题。

  基础设施专家:DBA,网络管理员,系统架构师

  接受负载测试调整和分析的信息,来最优化应用性能和解决性能问题。

原文转自:http://www.uml.org.cn/Test/200801231.asp