测试工具
软件测试是当前保证软件产品质量控制、管理与检测的重要手段,越来越受到各国企业的关注。随着软件测试的地位逐步提高,测试的重要性逐步显现,测试工具的应用已经成为了普遍的趋势。用于测试的工具种类繁多,一般包括白盒测试、黑盒测试、性能测试,以及测试管理等。
WinRunner™是一种企业级的功能测试工具,用于检验企业应用程序是否能如期进行。通过自动捕获、检测和重放用户的交互操作,WinRunner能够发现系统缺陷,并确保那些跨越多个应用程序和数据库的业务流程再初次发布就避免故障的出现,并且保持其长期稳定地运行。您的公司的程序开发员刚创建完成一个新的Web应用程序,然而在布署应用程序之前,您必须测试该程序,以确保其正常运行,不会产生错误,但这并非是您唯一需要检测的对象,因为人事部门刚刚升级他们的erp系统,而你的客户不再加一个CRM程序,所以你目前面临着两难的问题就是如何有效的测试不断变化着的多重应用程序,而且这些应用程序存在于您的企业内部的不同环境之下--其实该问题也同样困扰着许多其他的公司。
如果资源有限的话,这个问题就比较棘手。人工测试的工作量大,况且您负担不起额外的时间来培训新的测试人员。为了确保那些复杂的应用程序再不同的环境下都可以可靠的运行,您需要一个易操作的测试工具来自动完成功能测试。MercuryInteractive的WinRunner软件为企业提供一个强大的功能测试工具。通过捕获、检测和重放用户对您企业Web应用程序的互动操作,WinRunner可自动执行功能测试。您因此可以辨认错误,确保应用程序顺利布署,并且能够维持其长时间的可靠运行。
创建测试
用WinRunner创立一个测试,您只需记录下一个标准业务流程,如下一张订单或创立一个新的商家帐户。WinRunner直观的记录流程能让任何人再GUI上轻轻点击鼠标就可以建立测试,即使技术知识有限的用户也能生成完整地测试。您还可以直接编辑测试指令来满足各种复杂测试的需求。WinRunner将两种测试创建方式结合在一个环境下,来适应不同的背景支持和你团队的喜好。
插入检测点
在记录一个测试的过程中,您可插入检测点,在查寻潜在错误的同时,比较预想和实际的测试结果。在插入检测点后,WinRunner会收集一套性能指标。在测试运行时对其进行验证。WinRunner允许您使用几种不同类型的检查点,包括文本、GUI、位图和数据库等各种类型。例如用一个位图检查点,您可以确认一个位图图象,如公司的图标是否出现于指定位置。
检验数据
除了创立并运行测试,WinRunner还能验证数据库的数据植,从而确保交易的准确性。例如,在测试创建时,您可以设定哪些数据库表格和记录资料需要检测。在重放时,测试程序会将数据库内的实际数值与预想的数值进行核对,WinRunner能自动显示检测结果,并标识出有过更新、修改、测试或插入的记录,以引起注意。
增强测试
为了彻底全面地测试一个应用程序,您需要了解在不同类型的数据下它是如何运行的。WinRunner的DataDriver™Wizard,让您只需要点击几下鼠标,就能简单地将一个记录的业务流程转化为一个数据驱动的测试,以此来反映多个用户各自独特且真实的操作行为。以一个订单输入的流程为例,您或许希望将一些锁定的项目栏如定单号或客户名转化为可变栏,这样就可以用多套数值来检测您对于用程序,使用DataDriver,您可以从这些数值中选择数据来源用于驱动您的测试。您可以将定单号或客户名输入WinRunner的表格,也可以直接从其他表格或数据库中导入。这些数据库会被存储在WinRunner的表格中,以便您任何时候都能对其进行编辑。数据驱动性测试不仅位您节省时间和资源,又提高了应用程序的测试覆盖率。
WinRunner另一个能加强测试质量的特征是具有FunctionGenerator™。它识一种可视工具,能快速可靠地为您的测试增加功能。使用FunctionGenerator,您可以从目录列表里选择一个功能加到您的测试中以提高测试能力。例如,您点击“calendar”,然后从历年功能中的下属目录中选择,如“calendar_select_date0”,FunctionGenerator就会提供您所选功能的解释。选定了这个功能后,您可以直观地输入参数,再将这套完整的功能插入您的测试。目前有相当数量的企业应用程序仍然使用非标准的对象。WinRunner的VirtualObjectWizard能识别以前未知的对象,能够用其来代表您未知的对象。您可以为你地对象设定标识,如一个按扭,并为其命名,以后每次您记录测试用到这个按扭,WinRunner就会自动对应它的名字。这个特性既能加强您测试的质量,又提高了测试文件的可读性。
运行测试
在测试创建完成、插入检查点、并做出一些必要的功能添加之后,您就可以开始运行测试。当WinRunner执行您的测试时,它会自动操作应用程序,正如一个真实用户根据记录流程执行着每一步的操作。而且它的意外处理功能能够为测试排除干扰,包括处理来自message和alert的事件。
分析结果
一旦测试运行后,您就需要分析测试结果。WinRunner的互动式报告工具会列出在测试中发现的错误和出错的位置。通过提供这种详尽的,易懂的报告,WinRunner可以帮助您解释所得的结果,这些报告对在测试运行中发生的重要事件进行描述,如错误内容和检查点等。点击按扭,您还能进一步获取详尽的详细资料。这些结果都可以通过MercuryIntreactive的测试管理工具TestDirector®来查阅。
维护测试
岁时间的推移,开发人员会对应用程序做进一步的修改,并需要另加额外的测试。有了WinRunner,您就不必为应用程序的每一次改动创建新的测试,WinRunner会帮助您创立在程序应用周期内可重复使用测试,这样可大大地节省时间和资源,充分利用测试投资。每次您记录一个测试,WinRunner自动生成一个GUImap用于存储应用对象。这些对象信息分层次组织,让您既可以总揽所有的对象,也可以选择某栏。深入查询更多的信息。更重要的是,GUImap提供一个而非无数个测试,就能达到重复使用的目的。由于能让测试重复使用,WinRunner提供的不仅仅是一种能在多种环境下检测应用程序的功能测试工具,而是一种在程序应用周期内,经济实效且利用率高的测试方式。
为无线应用作准备
随着无线设备种类和数量的增加,您的应用程序测试计划需要同时满足传统的基于浏览器的用户和无线浏览设备,如手机,呼机和个人数字助理(PAD)无线应用协议是一种公开的,全球性地,用来支持标准数据格式化和无线设备信号的传送,从而提供互联网沟通和先进的电讯设备。运行WinRunner,测试人员可利用微型浏览模拟器来记录业务流程,然后回访,效验这些流程,在WAP程序应用期内自动完成错误。
LoadRunner®是业界领先的预测系统行为盒性能的负载测试工具。通过模拟成千上万名用户访问企业应用系统盒实施实时性能监测,LoadRunner能够对整个企业架构进行性能测试和问题查找。通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能并加速应用系统的实施周期。目前地企业级应用系统都必须支成千上万的用户,各类硬件平台和不同厂商的产品组成的复杂的系统环境。难以预知的用户负载和愈来愈复杂的应用程序使公司时时担忧会发生系统性能问题,如用户等待过长的响应时间,系统失灵等。其结果就是导致公司收益的损失。
MercuryInteractive的LoadRunner能让企业最大的保障业务运行,无需购置额外硬件而能最大限度的提升IT性能,确保最终工用户在使用系统各个环节种对以测试性都评价良好。LoadRunner是一种具备高度适应性的,自动负载测试工具,它能预测系统行为,优化系统性能。LoadRunner强调的是整个企业系统,它通过模拟实际用户的操作行为和实施实时性能检测,来帮助您更块的确认和查找问题的所在。此外,LoadRunner能支持最广泛的协议标准和技术。
创建虚拟用户
使用LoadRunner的VirtualUserGenerator引擎,您能很简便地模拟应用系统的负载量。该引擎能够生成代理或虚拟用户来模拟业务流程和真正用户的操作行为。它现记录下业务流程,如下订单或机票预定,然后将其转化为测试脚本。利用虚拟用户技术,您可以在Windower,UNIX或Linux机器上同时运行成千上万各测试。所以LoadRunner能极大地减少负载测试所需的硬件和人力资源。另外,使用了LoadRunner的TurboLoad专利技术,您能获得最搞规模适应性的水平。TurboLoad使您有能力创立与每天几十万名在线用户和数以百万计的点击数想匹配的负载。
用VirtualUserGenerator建立测试脚本后,您可以开始对其进行参数化操作,这以操作能让您利用击套不同的实际生产数据来测试您的应用程序,从而反映出企业系统的工作负载。以一个订单输入过程为例,参数化操作可将记录中的固定数据,如订单号和客户名,来匹对多个实际拥护的操作行为。LoadRunner通过它的DataWizard来帮助自动的参数化过程。DataWizard直接恋于数据库服务器的后端,从这您可以获取所需的数据(如订单号和用户名)并直接将器输入到测试脚本,避免了人工数据处理的需要,DataWizard为您结合是呢感了大量的时间。为了近一步确定你的VirtualUser能够模拟真实用户,您可利用LoadRunner控制某些行为特性。例如,只要点击一下鼠标,您就能够轻易控制交易的数量,交易的效率,用户的思考时间和连接速度等。
创建真实的负载
VirtualUser建立起后,您需要界定您的负载方案,什么样的业务流程组合和多少数量的实际用户会在没一个负载服务器上运行。用LoadRunner的控制器,您能很块组织起多用户的测试方案。控制器的Rendezvous功能提供一个互动的环境,在其中您既能建立起持续且循环的负载,又能管理和驱动负载测试方案。而且,您可以利用它的日程控制服务器来定义用户在系统以何中速度运行会产生负载。这样,您就能将测试过程自动化。
同样您可以用Controller来限定您的负载方案,在这个方案下所有的用户同时执行一个动作--如登陆到一个库存应用程序--来模拟峰值的负载情况。另外,您还能创立方案用于衡量不同供应商的软硬件产品性能--包括服务器,数据库,网络设备等--来帮助了解客户的购买决定。LoadRunner通过它的Autoload技术,提供你更多的测试灵活性。使用Autoload,您可以根据目前的客户人数事先设定测试目标,优化测试流程。例如,您的目标十可以让您的应用系统承受的每秒点击数或每秒的交易量。
定位性能问题
LoadRunner内含集成的实时监测器,在负载测试过程的任何时候,您都可以观察的应用系统的运行性能。这些被动监测器为你实时显示交易性能数据,如反映时间,和其它系统组件包括应用服务器,Web服务器,网络设备和数据库等的及时性能。这样,您就可以在测试过程中从客户和服务器的双方面评估这些系统组件的运行性能,从而更快的发现问题。再者,利用LoadRunner的ContentCheck™,您可以判断负载下的应用程序功能是否正常与否。ContentCheck在virtualusers运行时,检测网络程序内容,从中确定是否有错误内容传送出去。它的实时浏览器提供你一个从终端用户角度观察到的程序性能情况。
分析结果精确定位
一旦测试完毕后,LoadRunner收集汇总所有的测试数据,并提供您高级分析和汇报能力,以迅速查找到性能问题并追溯缘由。使用LoadRunner的Web交易细节监测器,您可以决定将所有的图象,加架构和文本下在到每一网页商所需得的时间。例如,这个组件细节分析机制能够分析是否因为一个大尺寸的图形文件或是第三方的数据组件造成应用系统运行速度减慢。另外,Web交易细节监测器分解用于客户,网络和服务器商店终端-终端反映时间,便于确认问题,定位查找真正出错的组件。例如,您可以获取分解出的耗费在网络商的全部时间,以判断DNS解析上使用的时间,连接服务器或SSL认证所花费的时间。通过使用LoadRunner的分析工具,您很快得查找到出错发生的位置和原因并作出相应的整改。
自信的发布
负载测试是一个重复过程。每次处理完一个出错状况,您都需要对您的应用程序在相同的方案下,在进行一次负载测试。以此检验您所做的修政是否改善了运行性能。
测试EnterpriseJavaBeans
LoadRunne完全支持EJB的负载测试。这些基于JAVA的组件运行在应用服务器上,提供广泛的应用服务。通过测试这些组件,您可以在应用程序开发的早期就确认并解决可能产生的问题。利用LoadRunner,您可以很方便地了解系统的性能。它的Controller允许您重复执行于出错修改前相同的测试方案。它的另一个基于HTML的报告提供您一个比较性能结果所需的基准,以此衡量在一段时间内,有多大程度的改进并确保应用成功。由于这些基于HTML的报告形式,您可以将其公布于您公司的内部网上,便于随时查阅。
最大化投资回报
所有MercuryInterative的产品和服务都是集成设计,能完全相容地一起运作。由于他们具有相同的核心技术,来自于LoadRunner和ActiveTest™的测试脚本,在MercuryInterative的主动负载测试服务下,可以被重复用于性能测试,借助MercuryInterative的监测功能,Topaz™和ActiveWatch™,测试脚本可重复利用从而平衡投资收益。更重要的是,您能为测试的前期部署和生产中的监测提供一个完整的应用性能管理解决方案。
无线应用协议
随着无线装置数量和种类的增多,您的测试计划需要同时满足传统的基于浏览器的用户和无线互联网设备,如手机和个人数子式助手。LoadRunner支持2项最广泛使用的协议:无线应用协议(WAP)和商务模式(I-mode).此外,通过负载测试整体构架--从入口到网络服务器,LoadRunner能让您只需要通过记录以此脚本,就可以完全检测这些互联网系统。
流媒体作用
LoadRunner还能支持流媒体应用。为了保证终端用户得到良好的操作体验和高质量的流动,您需要检测您的流媒体应用程序。使用LoadRunner,您可以记录和重放任何现代流行的多媒体数据流格式来诊断系统的性能问题,查找缘由,分析流应用的质量。完整的企业应用环境的支持,LoadRunner支持最广泛的协议,可以测试完整IT基础构架。
TestDirector™是业界第一个基于Web的测试管理解决方案,他能够在您公司内部进行全球范围的测试协调。TestDirector能够在一单独的应用系统中提供需求管理功能,并且能够把测试需求管理于测试计划、测试日程控制、测试执行和错误跟踪等功能融合为一体,因此极大地加速了测试的进程。电子商务正改变着许多公司在如何规划并建立IT系统方面的决定。常常在一瞬间,一个Web应用就完成了创建和部署,并展现在您的客户、供给商或合作伙伴的面前。但是,由于紧凑的研发计划和复杂的系统结构,Web应用测试经常是被忽视的。为了和心经济同步,您必须研发经过全面测试的高品质的网络应用。在正式面试之前,测试管理提供了一套测试Web应用的组织
框架。由于测试方案会根据不断推陈出新的应用需要而改进,您需要设立一个中央点来管理测试过程。一套基于Web的测试管理系统提供了一个协同合作的环境和一个中央数据仓库。由于测试人员分布在各地,您需要一个统一的测试管理系统能让用户不管在何时何地都能参和到整个测试过程中,并献计献策。IT部门的增长速度很快,人员也经常流动。您必须以最快的速度培训新的测试人员,教会他们任何的测试有关的知识技术。而TestDirector所提供的一种单点模式,便于管理复杂的部署过程,改善部门间的沟通,加速您测试的成功。TestDirector能消除组织机构间、地域间间的障碍,他能让测试人员,研发人员或其他的IT人员通过一个中央数据仓库,在不同位置就能互通测试信息。TestDirector将测试过程--从测试需求管理、测试计划、测试日程安排,到测试执行,以至到出错后的跟踪--仅在一个基于浏览器的应用中便可完成。
需求管理
应用需求驱动整个测试过程,通常由需求来决定应用哪一部分需要经历测试,需要研发哪些种类型的测试,连同研发完成的应用是否满足了用户的需求。TestDirector的Web界面简化了这些管理过程,以次您能够验证应用软件的每一个特性都正常运作。TestDirector的需求管理能够让测试人员根据应用需求自动生成测试用例。通过提供一个直观机制将需求和测试用例、测试结果和报告的错误的联系起来,从而确保完全的测试覆盖率。
一般又种方式可将需求和测试了连接起来。其一,TestDirector捕获并跟踪任何首此次发生的应用需求。您能够在这些需求的基础上生成一份测试计划,并将测试用例对应同一个应用需求,您必须能方便的管理需求和测试用例之间可能存在的一种多配多的关系,确保每一个需求都经过测试。其二,由于Web应用是不断更新和变化的,需求管理允许测试人员加减或修改需求,并确定现在的应用需求已拥有了一定的测试覆盖率。对于任何动态地改变Web应用,必须审阅您的测试计划是否准确,确保其符合最当前的应用需要。
计划测试
测试计划的定制是测试过程中至关重要的环节。他为整个测试提供了一个结构筐架。TestDirector的TestPlanManager在测试计划期间,为测试小组提供一个关键要点和Web界面来协调团队间的沟通。TestPlanManager指导测试人员如何将应用需求转化为具体的测试计划。这种直观的结构能帮助您定义如何测试您的应用程式,从而您拧组织起明确的任务和责任。TESTPlanManager提供了多种方式来建立完整的测试计划。您能够从草图上建立已份计划,或根据您用RequirementsManager所定义下的应用需求,通过TestPlanWizard快捷的生成已份测试计划,假如您已将计划信息以文字处理文档形式,如MicrosoftWord方式存储,您能够再利用这些信息,并将他导入到TestPlanManager.他把各种类型的测试汇总再一个能够折叠式目录树内,您能够再一个目录下查询到任何的测试用例。例如,您能够将人工和自动测试,如功能行的,还原和负载测试方案结合在同一个位置。
TestPlanManager还能进一步帮助您完善测试设计和以文档形式描述每一个测试步骤,包括对每以项测试、用户反映的顺序、检查点和预期的结果。TestDirector还能为每一项测试连枷附属文档,如WordExcel,HTML,这些文档可用于更周详的记录每次测试用例。Web网络应用日新月异,您的需求也随之不断改变。您需要相应地更新您的测试计划。优化测试内容,即使频繁的更新,TestDirector仍能够简单地将用需求和相关的测试对应起来,TestDirector还可支持不同的测试方式来适应您公司特别的测试流程。多数的测试项目需要一个又人工和自动测试的结合,包括完整性测试。但即使符合自动测试需要的工具,在大部分情况下也需要人工的操作,启用一个演变行的而非改革行的自动交换机,能够让测试人员决定那些重复的人工测试转换到自动测试脚本的转化,并可立即启动测试设计过程。
安排和执行测试
一旦测试计划建立后,TestDirector的TestLabManager为测试日程制订提供一个基于Web的框架。他的SmartScheduler™根据测试计划中创立的指标对运行着的测试计划中创立的指标对运行着的测试执行监控。当网络上任何一台主机空闲,测试能够彻夜执行于其上,SmartScheduler能自动分辩是系统还是应用错误,然后将测试重新安排到网络上的其他机器。TestDirector,对于不断改变的Web应用,经常性地执行测试是至关重要的,能够追查出错发生的环节并评估应用质量,然而,这些测试运行都要消耗测试资源和测试时间。使用GraphicDesigner图表设计,您可很快的将测试分类以满足不同的测试目的,如功能测试,负载测试,完整性测试等,他的拖动功能可简化设计和排列在多个机器上运行的测试,最终根据设定好的时间、路径或其他测试的成功和否,为序列测试制订执行日程。SmartScheduler能让您在更短的时间内,在更少的机器上完成更多的测试。用Winrunner®、Astra®、QuickTest™、AstraLoadTest或LoadRunner来自运动运行功能或负载测试,无论成功和否,测试信息都会被自动汇集传送到TestDirector的数据储存中央。同样,人工测试也以次方式运行。
错误管理
当测试完成后,项目经理必须解读这些测试数据,并将这些信息用于工作中。当有出错发现时,他们还要指定相关人员及时纠正。TestDirector的错误管理功能直接贯穿并作用于检测的全过程,以提供管理系统终端--终端的出错跟踪包括,从最初的问题发现到修改错误再到检验修改结果。由于同一项目组中的成员经常分布于不同的地方,TestDirector基于浏览器的特征,使出错管理能让多个用户何时何地都可通过Web查询出错跟踪情况。利用出错管理,测试人员只需要进入一个URL,就能够汇报何更新错误。过滤整理错误列表并作出趋势分析。再进入一个出错案例之前,测试人员还能够自动执行一次错误数据库搜寻确是否已有类似的案例记录,这已查寻功能能够避免重复劳动。
图像化和报表输出
测试过程的最后一步时分析测试结果,确定应用程式是否已部署成功或需要再次测试。TestDirector常规化的图表和报告和再测试的任何的任一环节帮助您对数据信息进行分析。TestDirector还以标准的HTML或Word形式提供一种生成和发送正式测试报告的一种简单方式。测试分析数据还能够简便地输入到一种工业标准化的报告工具,如Excel,Reportsmith,Crystal,Reports和其他类型的第三放工具。
2、http://tech.ddvip.com/2008-02/120352538742184.html
3、http://www.sudu.cn/info/html/website/20080508/306992.html
4、http://sd.csdn.net/subject/testtool.htm
)















