跟小D每日学口语

LoadRunner工具入门介绍

Mercury LoadRunner 是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner ,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
 
  目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢,系统崩溃等问题。
 
  上述的问题都不可避免地导致公司收益的损失,Mercury Interactive 的 LoadRunner 能让企业保护自己的收入来源,无需购置额外硬件而最大限度地利用现有的IT 资源,并确保终端用户在应用系统的各个环节中对其测试应用的质量,可靠性和可扩展性都有良好的评价。
 
  LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。
 
  LoadRunner提供三大功能模块,分别介绍如下:
 
  轻松创建虚拟用户——Virtual User Generator
 
  使用LoadRunner 的Virtual User Generator,您能很简便地创立起系统负载。该引擎能够生成虚拟用户,以虚拟用户的方式模拟真实用户的业务操作行为。它先记录下业务流程(如下订单或机票预定),然后将其转化为测试脚本。利用虚拟用户,您可以在Windows ,UNIX 或Linux 机器上同时产生成千上万个用户访问。所以LoadRunner能极大的减少负载测试所需的硬件和人力资源。
 
  另外,LoadRunner 的TurboLoad 专利技术能提供很高的适应性。TurboLoad 使您可以产生每天几十万名在线用户和数以百万计的点击数的负载。   

    用Virtual User Generator 建立测试脚本后,您可以对其进行参数化操作,这一操作能让您利用几套不同的实际发生数据来测试您的应用程序,从而反映出本系统的负载能力。以一个订单输入过程为例,参数化操作可将记录中的固定数据,如订单号和客户名称,由可变值来代替。在这些变量内随意输入可能的订单号和客户名,来匹配多个实际用户的操作行为。
 
  LoadRunner 通过它的Data Wizard 来自动实现其测试数据的参数化。Data Wizard 直接连于数据库服务器,从中您可以获取所需的数据(如定单号和用户名)并直接将其输入到测试脚本。这样避免了人工处理数据的需要,Data Wizard 为您节省了大量的时间。
    为了进一步确定您的Virtual user 能够模拟真实用户,您可利用LoadRunner 控制某些行为特性。例如,只需要点击一下鼠标,您就能轻易控制交易的数量,交易频率,用户的思考时间和连接速度等。
 
  创建真实的负载——Controller
 
  Virtual users 建立起后,您需要设定您的负载方案,业务流程组合和虚拟用户数量。用LoadRunner 的Controller,您能很快组织起多用户的测试方案。Controller 的Rendezvous 功能提供一个互动的环境,在其中您既能建立起持续且循环的负载,又能管理和驱动负载测试方案。 而且,您可以利用它的日程计划服务来定义用户在什么时候访问系统以产生负载。这样,您就能将测试过程自动化。同样您还可以用Controller 来限定您的负载方案,在这个方案中所有的用户同时执行一个动作——如登陆到一个库存应用程序——来模拟峰值负载的情况。另外,您还能监测系统架构中各个组件的性能—— 包括服务器,数据库,网络设备等——来帮助客户决定系统的配置。
 
  LoadRunner 通过它的AutoLoad 技术,为您提供更多的测试灵活性。使用AutoLoad ,您可以根据目前的用户人数事先设定测试目标,优化测试流程。例如,您的目标可以是确定您的应用系统承受的每秒点击数或每秒的交易量。
  定位性能问题——Controller(实时监控场景)
 
  LoadRunner 内含集成的实时监测器,在负载测试过程的任何时候,您都可以观察到应用系统的运行性能。这些性能监测器为您实时显示交易性能数据(如响应时间)和其它系统组件包括application server, web server,网路设备和数据库等的实时性能。这样,您就可以在测试过程中从客户和服务器的双方面评估这些系统组件的运行性能,从而更快地发现问题。

  再者,利用LoadRunner 的ContentCheck TM ,您可以判断负载下的应用程序功能正常与否。ContentCheck 在Virtual users 运行时,检测应用程序的网络数据包内容,从中确定是否有错误内容传送出去。它的实时浏览器帮助您从终端用户角度观察程序性能状况。
 
  分析结果以精确定位问题所在——Analysis
 
  一旦测试完毕后,LoadRunner 收集汇总所有的测试数据,并为您提供高级的分析和报告工具,以便迅速查找到性能问题并追溯原由。
 
  使用LoadRunner 的Web 交易细节监测器,您可以了解到将所有的图象、框架和文本下载到每一网页上所需的时间。   

 

   另外,Web 交易细节监测器分解用于客户端、网络和服务器上端到端的反应时间,便于确认问题,定位查找真正出错的组件。例如,您可以将网络延时进行分解,以判断DNS 解析时间,连接服务器或SSL 认证所花费的时间。通过使用LoadRunner 的分析工具,您能很快地查找到出错的位置和原因并作出相应的调整。
 
  重复测试保证系统发布的高性能
 
  负载测试是一个重复过程。每次处理完一个出错情况,您都需要对您的应用程序在相同的方案下,再进行一次负载测试。以此检验您所做的修正是否改善了运行性能。
 
  测试Enterprise Java Beans
 
  LoadRunne完全支持EJB的负载测试。这些基于JAVA的组件运行在应用服务器上,提供广泛的应用服务。通过测试这些组件 ,您可以在应用程序开发的早期就确认并解决可能产生的问题。 利用LoadRunner,您可以很方便地了解系统的性能。它的Controller允许您重复执行于出错修改前相同的测试方案。它的另一个基于HTML的报告提供您一个比较性能结果所需的基准,以此衡量在一段时间内,有多大程度的改进并确保应用成功。由于这些基于HTML的报告形式,您可以将其公布于您公司的内部网上,便于随时查阅。
 
  最大化投资回报
 
  所有Mercury Interative的产品和服务都是集成设计,能完全相容地一起运作。由于他们具有相同的核心技术,来自于LoadRunner和ActiveTest?的测试脚本,在Mercury Interative的主动负载测试服务下,可以被重复用于性能测试,借助Mercury Interative的监测功能,Topaz?和ActiveWatch?,测试脚本可重复利用从而平衡投资收益。更重要的是,您能为测试的前期部署和生产中的监测提供一个完整的应用性能管理解决方案。
 
  支持无线应用协议
 
  随着无线装置数量和种类的增多,您的测试计划需要同时满足传统的基于浏览器的用户和无线互联网设备,如手机和个人数子式助手。LoadRunner支持2项最广泛使用的协议:无线应用协议(WAP)和商务模式(I-mode)。此外,通过负载测试整体构架——从入口到网络服务器,LoadRunner能让您只需要通过记录以此脚本,就可以完全检测这些互联网系统。
 
  支持流媒体作用
 
  LoadRunner还能支持流媒体应用。为了保证终端用户得到良好的操作体验和高质量的流动,您需要检测您的流媒体应用程序。使用LoadRunner,您可以记录和重放任何现代流行的多媒体数据流格式来诊断系统的性能问题,查找缘由,分析流应用的质量。
 
  完整的企业应用环境的支持
 
  LoadRunner支持最广泛的协议,可以测试完整IT基础构架。

posted @ 2009-10-30 14:02  简简单单幸福  阅读(1655)  评论(0编辑  收藏  举报