通过自动化性能测试确保系统性能优化最终用户体验

来源 :中国计算机报 | 被引量 : 0次 | 上传用户:chengmoshijing
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  难以置信的变化节奏和软件复杂性的骤升为软件开发过程带来了巨大的风险。严格的测试是一种最通用的战略,它可以定量并降低业务的风险。对于开发人员、QA小组和管理层来说,关键是在不超出IT预算的前提下,在系统上线之前,精确而全面地验证系统的性能。
  
  性能测试与自动化性能测试
  
  性能测试是在系统上线之前,唯一能精确测试系统端到端性能的一种方法。性能测试解决方案可以利用最少的硬件资源,模拟成千上万个用户与系统产生交互作用。它能衡量最终用户响应时间,持续重复负载,监控负载下的系统组件,并提供强大的分析和汇报引擎。
  全球业务优化科技(BTO)的领导者美科利(Mercury)公司通过在多年积累的经验中发现,自动化测试解决方案通常使用四种主要组件来创建和运行测试。其中包括:Virtual User Generator将最终用户业务流程捕捉到自动化脚本中。Controller可以组织、驱动、管理和监控负载。Load Generator可以在执行阶段运行虚拟用户。Analysis Engine可以查看、仔细分析和对比测试结果。
  自动化性能测试是一种需要遵循的原则,它利用人员、流程和技术来降低应用、更新或补丁安装时的风险。自动化性能测试的核心就是对部署前的系统施以生产环境中的工作负荷,同时衡量系统性能和最终用户体验。
  自动化性能测试流程
  有些机构通过将流程分割成独立的阶段,成功地实施了自动化性能测试。美科利认为,虽然每个性能测试的实施过程都有所差异,但广义上说,该流程可以分为以下四个阶段——设计、创建、执行和诊断/调优。
  · 设计
  设计阶段包括定义被测业务流程,定义业务流程的平均或峰值生产时,并制定系统总体的用户和响应时间目标。该阶段中,性能测试小组将和业务部门(LOB)合作,收集性能需求。性能需求主要分为业务需求、技术需求、系统需求和团队需求等四种。
  业务需求的收集通常需要和相关专家(subject matter experts-SMEs)进行交流,主要包括应用概况、业务流程列表、业务流程描述、交易列表、业务流程图表等内容。
  技术需求可以通过与系统管理员和数据库管理员(DBAs)进行交流,包括环境浏览、定义系统范围的会议、生产图表等方面。
  收集系统需求决定了负载测试流程的成败。系统需求的收集通常和各业务部门的项目经理相互协商决定,包括以下问题:系统在正常时段和高峰时段必须支持的用户数量是多少?系统每秒能够处理的交易数量是多少?对所有关键业务交易来说,最长的和最短的可接受响应时间是什么?用户组如何进行连接?生产环境中的系统工作负荷会遭遇什么情况?什么是交易混合(mix)?团队需求是确定参与未来负载测试的合适的小组成员,当性能测试成为卓越中心(CoE)的一个组成部分时,资源的调配和内部后勤管理等必须在设计阶段处理完成。
  · 创建
  创建阶段的任务包括对设计阶段所确定的业务流程和工作负荷进行调优,使其成为自动化组件,可推动形成反复的、实际的负载。它分为自动化安装和环境安装两个重点。自动化安装通常是由性能工程师来完成的一系列连续任务:
  脚本创建:录制并文档记录业务流程,形成自动化的脚本。
  交易:插入时间参数,形成业务所需的逻辑计时。
  参数化:将所有输入数据,如登录ID和密码用一个池(pool)来取代,每个虚拟用户因此可以使用特定数据来进入应用。
  场景:通过为每组用户分配不同的脚本、连接和用户行为,从而创建生产工作负荷。
  监测器:确定哪些服务器或机器要执行负载监控。
  环境安装包括装配必需的硬件、软件和数据,以实现一个成功的、真实的负载测试。这需要和系统、DBA、运作和业务等各个小组进行合作。
  · 执行
  执行阶段包括运行负载场景和衡量系统性能。它是由多种性能测试所组成的多步骤进程。每种类型的测试可以提供必要信息,使您能够充分了解应用发布的业务风险。负载测试的种类包括:
  基线测试验证系统和周围环境是在合理的技术参数范围内运行。仅仅用5~10名用户来运行性能测试,确定最终用户交易性能的基线。应该在性能测试流程的开始和结束之际运行这类测试,以衡量响应时间提升的确切尺度。
  性能测试在环境中模拟一个负载,从而确定系统可以处理的最优的和最大的用户数量。这些测试应该模拟平均和峰值时刻的生产能力,还应该采用真实用户行为,如思考时间、调制解调器模拟和多种浏览器类型等来最大程度地确保精确性。LoadRunner中的所有监控器和诊断能力都应该全力运行,以全面了解系统衰退和瓶颈问题。
  标准测试(Benchmark Tests)设计用于衡量和对比每种机器类型、环境或应用创建在理想状态下的性能。这种测试在系统经历了可扩展性测试之后展开,用于了解不同架构的性能影响。
  渗透测试(Sock Tests)设计用于在长时间内对系统运行负载测试,检查系统运行的情况。
  峰值测试设计用于在一段时间内对系统模拟峰值负载,从而确保应用和基础硬件能够应对一段时间的高负载。
  · 分析、诊断和调优
  诊断和调优阶段的重点在于定位问题,协助快速解决问题,并调整系统参数以最大化系统性能。在性能测试期间和性能测试之后,可以通过对监控、分析、调优、诊断四个步骤的反复运行,进一步实现性能的最优化。
  一个好的性能测试的ROI应该包括两个方面:风险缓解确保项目在上线之际拥有良好的性能可扩展性和性能。性能优化通过提升最终用户响应时间或降低整体硬件基础架构的需求,在一定程度上提高了系统的性能。
  
  性能测试需要参与的人员
  
  一个好的性能测试需要以下人员的参与。项目经理:协调多个性能项目,管理测试进度,购买必要的硬件和/
  或软件,处理资源和资金问题。
  业务分析人员:负责从业务角度来审核和验收(sign-off)系统性能,协助交易流程开发和性能测试进度安排。性能经理:作为团队中的联系人,负责协调性能支持小组的工作。负责管理性能小组的日常活动。性能测试人员:负责自动化测试的创建和执行,并收集测试结果。应用架构师:接收负载测试的诊断和分析信息,用于优化应用性能或解决性能缺陷。基础架构专家(DBAs、网络管理员、系统架构师):接收负载测试的调优和分析信息,用于系统性能或解决性能缺陷。
  
  性能测试市场的绝对领导者
  
  在性能测试市场,美科利公司拥有超过70%的份额(根据2003年Newport Group报告),是该领域的绝对领导者。此外,美科利LoadRunner所拥有的一系列关键性能使它成为该行业的领先者。
  · 按需的生产工作负荷:LoadRunner可以驱动上百甚至上千个虚拟用户来执行不同的业务流程,从而为应用模拟一种实际的生产条件。这有助于在上线之前发现潜在的性能和可扩展性瓶颈问题,同时最大程度地减少生产宕机和性能低下问题,满足服务水平和正常运行的需求。
  · 企业环境支持:LoadRunner支持近40种协议——远远超出其它的供应商。协议包括:web、J2EE、.NET、XML、Oracle、PeopleSoft、无线、Citrix和客户服务器应用。
  · 企业监控支持:LoadRunner非插入的实时性能监控器可以提供被测系统所有组件的详细信息。其中包括web服务器、应用服务器、数据库、ERP和CRM系统、防火墙和负载平衡器。
  · 诊断:LoadRunner是唯一可以跟踪、测时和检修处于负载条件下单个应用组件的性能测试解决方案。用户可以深入到一个缓慢的最终用户交易中,发现引起交易缓慢的瓶颈问题或SQL命令。
  · 基础架构调优:LoadRunner是唯一的性能测试解决方案,它提供客户定制方法论,可以在系统上线之前隔离和解决系统基础架构的瓶颈问题。
  · 自动化分析:LoadRunner拥有行业中最深入和最广泛的分析能力,可以将性能测试结果转化成可执行的、精确的开发数据,极大地降低了问题解决的时间,推动展开更多的测试循环,从而确保了上线应用的高质量。
  · 易于使用:LoadRunner是完全为QA用户而创建的。它提供形象的脚本编写语言、数据和自动关联机制、ActiveScreen技术,使得脚本录制和运行负载测试变得简单易行。
  · TurboLoad:LoadRunner的每个虚拟用户只需要最少的CPU和内存资源就可以帮助实现最大的可扩展性。这确保了在实施阶段只需要很低的或者根本没有隐性的硬件成本。
  · WAN模拟:LoadRunner通过采用网络等待时间和数据包丢失(packet-loss)配置,将生产网络模拟到负载生成器上,从而形成跨洋和跨地区网络连接模拟。这样,远程用户就能避免遭遇低下的性能问题,业务受到影响的风险也随之降低。
  · 统一的脚本录制引擎:LoadRunner拥有和美科利应用管理产品相同的脚本录制引擎。这样就降低了美科利解决方案的培训成本、脚本录制成本和运营总成本。
  
  小结
  
  使用软件应用不像使用一辆汽车,其固定部件只在损坏了之后才调换。软件应用每周、每月、每年都在发展变化,无论该应用是设计用于提升竞争力还是应对业务环境的。因此,这种变化本身也带来了另外一些风险,企业必须面对并管理好这些风险。
  使用先进的性能测试解决方案和产品(如美科利 LoadRunner)实现自动化性能测试,企业可以在系统上线之前,验证应用是否满足了业务的需求;有条不紊地展开应用部署;量化变更对最终用户体验的影响;精确定位出错组件,并快速解决问题。
其他文献
在当今竞争激烈的市场环境下,成本控制毫无疑问是各个企业提升竞争力非常重要的一个部分,由于众多竞争对手都能够提供同质化产品和服务,因此企业必须从控制内部成本做起,作为企业内部开销相对比较大的IT部门,首当其冲的工作就是最大化地挖掘IT系统潜力。在此过程中,数据库工程师应当引进新方法,新思路,扩展自己的视野,不仅仅局限在数据库维护本身,而应当从系统优化、应用优化、流程优化三个方面考虑增加企业投资收益。
随着移动力量的加强,用友公司的又一杀手级应用——用友移动门户平台正式推出。  所谓“移动门户”,就是企业在基于手机的移动平台上建立专供企业终端和客户浏览的短信网站,终端和企业客户可以通过手机上网的方式来访问企业移动网站平台,浏览企业的信息,订购产品与服务,使客户和消费者能够更及时方便地与企业进行信息交流。    三个工具一个都不能少    市场调查显示,中国目前手机用户已达4.5亿,而且有持续发展
初见这款联想天逸F40笔记本,首先的感觉是ABS工程塑料打造的机壳做工非常精细。这台联想天逸系列的新成员采用14英寸宽屏设计,银色的外壳显得非常有质感。在外壳上,天逸F40除了“lenovo”标志外,还配有奥运五环标志,使天逸F40具有更强的奥运纪念意义。    影音娱乐全不怕    打开天逸F40后可以看到,天逸F40的键盘和屏幕边框采用了比外壳颜色更深的灰黑色系。比较吸引眼球的是右上方红色的
在欧美,PusMail是最受用户欢迎的移动增值业务之一,客户规模已达数百万,成为国际电信市场增长最快的业务之一。尽管中国还处于发展初期,但是据统计,目前国内大、中型企业中约有23%的员工需要在移动状态下办公,市场潜力巨大。  终端手机厂商不会对这一巨大的市场视而不见。手机巨头诺基亚和摩托罗拉已经先后推出各自的支持Push mail技术的E系列终端和Q系列终端产品。而早在诺基亚收购Intellisy
关键字:搜搜客/纸媒2.0  为了提高网站流量而赔本发行报纸无异于饮鸩止渴。如此看来,给纸媒打上2.0的烙印,与其说是独辟蹊径的出路,还不如说是无可奈何的炒作。  2006年7月,国内分类广告网站搜搜客在上海将网站原有的杂志——《搜搜客生活手册》更名为《搜搜客》生活周刊。《搜搜客》生活周刊的运作模式与搜搜客网站一样,去除了杂志记者的模块,弱化了杂志编辑的功能,提倡用户创造内容。用户在网站发布广告信
易事特董事长何思模为全国巡展致辞  节能型应急电源  近日,“神舟号”系列飞船指定UPS电源供应商、中国大型电源生产基地——广东易事特电源股份有限公司在广州启动了主题为“航天品质,引领动力”的易事特绿色电源供电系统暨新产品全国巡展。近200名易事特产品的用户和各行业嘉宾亲临活动现场,对易事特的新产品有了更深入的了解。  广州站活动的成功举行,也拉开了此次大规模全国巡展的序幕。据悉,本次巡展还将陆续
在过去的电视卖场,几乎所有背投、等离子、液晶等高端彩电都号称“高清”电视,企业偷换概念的说法屡见不鲜。规范“高清”数字电视市场的混乱现状,需要统一技术标准。2006年4月,信息产业部正式发布了《数字电视接收设备—基础标准》、《数字电视接收设备—接口标准》、《数字电视接收设备—机顶盒标准》、《数字电视接收设备—机卡分离标准》、《数字电视接收设备—显示器标准》等25项行业标准。随着信息产业部数字电视高
刑事案件被害人救助制度,指对遭受犯罪行为侵害而又没有得到充分赔偿的被害人及其家属,通过相应程序给予以经济补偿为主要形式的救助制度。近年来,一些地区开展的被害人救助司法实践取得了一定的效果。但相较于制度设置初衷,我国现行的刑事案件被害人救助体系还存在一些问题。  一、我国刑事被害人救助模式现状及存在的问题  (一)缺乏系统、成熟的被害人救助理论  一般认为,对刑事被害人予以救助的理论依据主要有两类,
根据刑事诉讼法的规定,人民检察院作出的不起诉决定具有法定不起诉、酌定不起诉、存疑不起诉三种情形,2012年修改的刑事诉讼法中又增加了一项针对未成年人案件的附条件不起诉。不起诉救济制度对于防止检察机关权力滥用发挥巨大作用。但其本身也存在一定缺陷,不起诉制度可以说是检察机关的一项权力,权力本身就容易使掌权者迷失方向,导致权力滥用。单纯的刑事不起诉制度有可能使得检察院成为特权机关,只有在其他权力制约和相
本报讯 伴随着重组计划的宣布,英特尔有史以来最大的裁员之举全面启动。9月5日,英特尔公司宣布了依据组织架构与效率分析而做出的重组计划。根据英特尔的重组计划,到明年年中,英特尔的员工总数将减少10500人。据透露,这一裁员计划有望使英特尔公司2007年的成本和运营开支节省20亿美元。  人们在关注此次英特尔全球裁员的同时,更关心英特尔中国区所受到的波及。在英特尔宣布裁员的第二天,记者采访了英特尔全球