51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 3161|回复: 3

[转贴] 提升业务流程测试的最佳路径:实施自动化功能测试

[复制链接]

该用户从未签到

发表于 2007-6-19 16:51:15 | 显示全部楼层 |阅读模式
转自<中国计算机报>总第1541期 年第66期
      当今,企业必须对关键应用展开全面的功能测试,才能确保所有的业务流程能如期运作。严格的功能测试,是决定应用开发成功与否的关键,如何在紧缩的预算下,加快测试流程的速度、提升测试的正确性和完整性,成为软件开发人员、QA小组和经理们关注的话题。本文将为您介绍开展测试自动化的最佳途径,这种自动化功能测试的优势和挑战,帮助企业从业务流程测试的速度、质量和ROI三个角度全面提升功能测试的效率。
  通过对功能测试的关键组成部分实现自动化,企业可以赶上发布进度,更全面、更可靠地展开测试,正确验证业务流程功能,并以出色的在线运作能力,最终赢得更高的收益和更高的客户满意度。但是,在开始测试自动化项目之前,必须全面调查和了解自动化功能测试的前景的一些疑问。
  自动化 功能测试流程所必须
  随着IT机构面临压力日益加剧,管理层希望IT能实现新的功能,开发新的业务机会,并通过软件形成极具竞争力的优势。这就意味着会有愈来愈多的业务应用开发项目出现,但是其进度将日益紧迫,预算和资源也将更加有限。
  与此同时,管理层也逐渐意识到,Web服务、在线交易流程和企业资源规划(ERP)应用不仅重要,而且它们还决定了企业的收益获取能力。
  在以下图表中可以显示出,一个典型的机构会依靠多个应用,这些应用运行在不同的操纵系统上、使用多个不同的前端客户(front-end clients)、涉及大量的业务流程,并且和多个独立的数据包产生交互作用。
  全球业务优化科技(BTO)领导者美科利(Mercury)公司调查显示,当软件失败后,其代价将是及其高昂的——销售额的损失导致员工积极性、客户满意度的丧失,开发和QA小组的士气受损。在开发周期中,发现缺陷的时间越晚,代价将越高昂。实现自动化是提高软件测试流程的速度、正确性和灵活性的关键所在,能帮助企业及早地发现和修复更多的缺陷。
  手动功能测试面临挑战
  通过对传统手动功能测试流程的分析调查,我们发现了以下的不足之处:
  ● 测试花费的时间较长。有限的IT资源,加上交付日期紧迫,使费时的手动测试很难有效地实现业务的目标。测试人员和开发人员在实施手动测试时,必须对测试案例的每个步骤展开冗长的文档记录,会消耗大量宝贵的时间和资源。根据行业分析机构Aberdeen Group的调查显示,90%的IT项目交付时间推迟,导致该问题的主要因素就是执行了手动测试。
  ● 测试覆盖面不完整。平台、操作系统、客户设备、业务流程和数据包的激增,为手动测试流程带来了空前的复杂性。当测试人员开始组合多个数据包、操作环境和业务流程时,将会产生无数个亟待执行的、用于验证应用某个功能点的测试案例。这样,要验证所有的排列组合就显得异常困难。
  ● 导致较高的风险。相比计算机驱动的流程,手动测试流程会导致较高的错误风险和勘误,不可能做到多次重续面面俱到的测试。
  测试自动化的优势
  相对手动测试的不足,以美科利公司为代表的自动化功能测试解决方案优势逐渐彰显:
  ● 实现更快的执行速度。在执行功能测试脚本方面,计算机可以在较短时间内展开更多的测试,在规定时间内将可以测试更多应用,并按时交付更多的项目。和人工不同的是,计算机可以7×24小时不停地运作;它们不会感到疲惫和厌倦;不会主观设定工作内容。
  ● 推动更为广泛的测试覆盖面。自动化测试产品支持在所有的普通浏览器、操作系统中执行测试脚本。测试自动化产品拥有集成的、数据驱动的电子数据表单功能之后,开发人员和QA小组就能执行计算功能、操作数据包,并且快速创建多个测试循环来扩展测试案例的范围。有了自动化测试工具,就能快速形成任何一种交易组合和用户负荷。
  ● 实现更高的测试正确性,并及早发现更多的错误。测试自动化使开发人员更便捷地复制和文档记录软件缺陷,从而推动开发流程的进行,同时确保所有环境、数据包和业务流程的正确功能点。
  ● 提供统一的流程。引进自动化测试推动测试小组形成统一的流程,实现更高层次的测试一致性和更好的文档记录。
  ● 促进测试的重复使用。一旦测试脚本录制完成,开发人员在应用发生变更时,就能使用和重复使用脚本,并在测试系列中添加脚本。对于每个应用修改,开发人员无须重新创建脚本来测试相同的功能点。
  ● 支持ERP/CRM实施。随着愈来愈多的客户实施ERP/CRM解决方案,执行端到端回归测试的频率和重要性也将日益提升。
  界定是否实施自动化测试的方法
  通常,自动化测试的目标主要集中在关键的业务流程、复杂的应用,以及组成这些流程和应用的用户案例上。如果一个企业每天要调用多个软件测试人员,花费很多时间进行测试,但是仍然存在质量和功能问题的话,那么该企业起用自动化测试必将受益匪浅。
  美科利认为,是否对测试流程实行自动化取决于对ROI的考虑。但如果应用需要多个构建(builds)/补丁/修复;需要对大量的软件或硬件配置进行测试;需要支持多种并发用户时,实现自动化一定会取得积极的回报。此外,如果测试过程中涉及重复任务,如数据上传、系统配置以及应用需要满足特定的服务水平协议(SLA)时,自动化测试必将节约大量的时间和资源。
  计算任何一项投资的ROI可以通过以下简单的公式:
  ROI=投资的净现值/初始总成本
  自动化测试流程的实现成本是有形的,但是其净现值却包含多种无形的因素。最佳方式就是尽可能精确地确定硬钱成本(hard-dollar costs),然后将该成本和实现自动化测试后所取得的硬钱和软钱(soft-dollar)总体利益相比较,得出自动化测试的ROI。
  一般的在ROI计算中所考虑的硬钱成本包括:购买成本:购买自动化软件的成本;硬件成本:功能测试所需的硬件成本。通常,如果测试人员有权限进入一个标准的、具有Ethernet端口的桌面计算机或工作站的话,功能测试中就不需要具有特定目的的硬件;人力成本:包括培训人员编写测试案例或构建手动测试的支出。还需包括招聘、雇用、支付,以及保留熟练QA工程师所需的开支;培训成本:根据所选择的测试自动化产品,用户可能需要大量的培训来熟练编写自动化测试脚本。或者,企业会选择让专业服务公司来协助创建初期的自动化测试。
  在衡量自动化测试的潜在利益时,关键在于要看到无形的收益,如测试人员的士气和工作满意度不断提高,客户满意度和忠诚度得到提升,以及最终用户对于可靠软件的信任度进一步得到巩固。
  评估自动化测试软件:确定需求
  许多供应商都提供测试自动化产品。每个解决方案都有其强项和弱点,具有特定的属性和市场定位。每个企业的特定需求决定了对产品的选择,但是,包括美科利在内的任何一个测试自动化产品中,都需要包括几点重要的能力:
  ● 自动化测试的“无脚本”表现:产品必须提供一种“点-击”(point-and-click)界面,用于进入和作用于被测应用组件——这完全不同于用多行脚本来展现的形式。测试人员应该能直观再现业务流程中的每个步骤,直接观测和修改测试案例。这样就能缩短测试人员的学习周期,帮助QA小组满足紧迫的发布期限。
  ● 集成的数据表格:自动化功能测试的关键优势之一就是能在系统中快速导入大量的数据。但是,更为重要的是能够处理数据包,执行计算功能,并且用最少资源,快速创建上百个测试循环和排列组合。企业所需要的产品应该能够提供集成的电子数据表,实现强大的计算功能。
  ● 清晰、简明的报告:如果测试结果难以理解和领会,运行大量的测试也只能获得少量的利益。测试产品应该能自动生成报告,显示测试运行的所有方面,以易读的格式解释测试结果。报告应该详细说明应用错误发生的方位,以及所使用的测试数据类型;提供每个步骤的应用截屏,用于标识出任何存在的差异;提供每个检查点通过或失败的详细解释。另外,这些报告还应该在整个QA和开发小组中,不作任何修改地实现共享。
  美科利功能测试解决方案
  全球业务优化科技(BTO)软件的领导厂商美科利(Mercury)对实施自动化功能测试拥有自己独特的解决方案。目前市场上最为成熟且简单易用的功能测试解决方案是美科利QuickTest Professional和美科利WinRunner,通过这两款解决方案实施自动化功能测试IT小组将快速发现缺陷,确保应用在上线之前正确运行。
  美科利QuickTest Professional是美科利用于创建功能和回归测试系列的高级自动化测试解决方案。它利用一种创新的、零配置、关键词驱动的方式来实现自动化,使测试人员能使用自然语言来创建测试,验证用户的交互行为,确保业务流程按照设计要求运行。它是行业最佳的功能和回归测试自动化解决方案,适用于每种软件应用和环境。它使测试人员能自动捕获、验证和重放用户交互行为,以发现应用缺陷。
  美科利WinRunner是业界最常用的功能测试解决方案。目前,有24000多家企业和250000多位QA专业人员使用这种强大的解决方案。美科利WinRunner自动捕获、验证和重放用户交互行为,使测试人员能发现缺陷,确保业务流程直至部署阶段都能顺畅运行,并保持可靠的性能。
  总结
  实施自动化功能测试,企业可以显著提升测试流程的速度和正确性,并且在降低风险的同时,从软件项目中获取更高的投资回报。美科利解决方案使机构能全面优化软件质量,在客户的环境不断发展时同时,管理和控制应用开发和测试过程中的风险,通过完善的功能测试解决方案来实现持续的收益。
回复

使用道具 举报

该用户从未签到

 楼主| 发表于 2007-6-19 16:52:20 | 显示全部楼层
  第68期
  在上期专栏中,我们给您展示了自动化功能测试的优势,下面的文章我们将与您分享美科利功能测试解决方案——Mercury QuickTest Professional?和Mercury WinRunner?——的重要功能和优势,它们是业界最具影响力、最强大的自动化软件测试解决方案。通过实施自动化功能测试,企业可以显著提升测试流程的速度和正确性,并且在降低风险的同时,从软件项目中获取更高的投资回报。
  美科利(Mercury)两款功能测试解决方案——美科利QuickTest Professional和美科利WinRunner——使企业能自动化功能测试,协助IT小组快速发现缺陷,确保应用在上线之前正确运行。
  关于美科利
  QuickTest Professional
  美科利QuickTest Professional是美科利用于创建功能和回归测试系列的高级自动化测试解决方案。它利用一种创新的、零配置、关键词驱动的方式来实现自动化,使测试人员能使用自然语言来创建测试,验证用户的交互行为,确保业务流程按照设计要求运行。它是行业最佳的功能和回归测试自动化解决方案,适用于每种软件应用和环境。它使测试人员能自动捕获、验证和重放用户交互行为,以发现应用缺陷。
  美科利QuickTest Professional的ActiveScreen技术提供行业中最短的测试人员学习周期,TestGuard技术使测试易于维护。它满足了技术专家和业务分析人员双方的测试需求,使企业能更快地部署完成高质量的应用,同时降低风险和成本。
  美科利QuickTest Professional 8.2提供更多的环境支持,增加了以下核心改进功能:
  ● 支持Mercury Business Process Testing?,用于创建关键词驱动的、基于组件的测试,使主题专家(subject-matter experts)和美科利QuickTest Professional工程师能协同工作。
  ● 使测试人员能创建和使用每个应用组成的Multiple Application Areas。
  ● 提供Function Definition Generator,为测试和组件快速记录和登记新的用户定制功能。
  ● 为测试结果提供一种Open XML报告格式。
  ● 能使用参数来进入测试和组件中的数据。
  WinRunner是业界最常用的功能测试解决方案。目前,有24,000多家企业和250,000多位QA专业人员使用这种强大的解决方案。美科利WinRunner自动捕获、验证和重放用户交互行为,使测试人员能发现缺陷,确保业务流程直至部署阶段都能顺畅运行,并保持可靠的性能。该产品的最新发布版本——美科利WinRunner 8.0——增加了以下核心改进功能,并提供更多的环境支持:
  ● 实现一种新的、更强大的用户定制界面。
  ● 通过Compiled Module功能和一种新的拖放界面,支持基于框架的测试设计。
  ● 包含一种Advanced Debugger和Dockable Debug界面。
  ● 显示一种新的GUI-Map配置。
  ● 提供改进的内存管理。
  ● 支持更新的环境,如Window 2003、最新的Active X、C++、Visual Basic、MFC、Terminal Emulation、Oracle、Web、JAVA updates和PowerBuilder 10。
  在美科利QuickTest Professional和美科利WinRunner之间作出选择
  美科利WinRunner和美科利QuickTest Professional都是杰出的功能测试解决方案。对产品的选择应该基于测试执行所在的计算机环境,以及充分考虑到企业当前在美科利WinRunner脚本和人员培训方面的投资。
  美科利QuickTest Professional和美科利WinRunner所支持的环境可以划分成三大类:传统的(Classic)、通用的(Common)和新型的(Emerging)环境。
  美科利WinRunner和美科利QuickTest Professional支持的环境。
  美科利致力于提供所有传统和通用环境中的美科利WinRunner支持,同时确保通用和新型环境中的美科利QuickTest Professional支持。比如:当PowerBuilder发布了一个新的版本,并获得市场认同后,美科利将计划在美科利WinRunner中创建PowerBuilder新版本的支持功能(传统环境);当Internet Explorer发布了一个新版本,美科利将计划同时在美科利WinRunner和美科利QuickTest Professional中创建支持(通用环境);当.NET、SAP和Siebel发布了新版本,美科利将在美科利QuickTest Professional中创建支持(新型环境)。
  美科利的目标就是:当客户的环境不断发展时,客户还是能够使用在现有环境下所选择的功能测试解决方案来实现持续的收益。美科利正在进一步加强美科利WinRunner和美科利QuickTest Professional之间的整合水平,以及这两款产品和美科利质量中心 TestDirector?之间的整合力度。以确保美科利WinRunner TSL脚本和美科利QuickTest VBScripts之间的直接交流。实际上,这就意味着这两个产品之间能相互调用和运行脚本,并共享参数和测试成果。
  从美科利WinRunner向美科利QuickTest Professional转变的途径
  在美科利WinRunner测试产品上投入大量资金的客户,或者需要在传统环境(如PowerBuilder)中进行应用测试的客户,他们可以放心地选择继续使用美科利WinRunner。因为,美科利公司正不断开发和推出该产品的高级功能。而那些想要转向美科利QuickTest Professional的客户则可以使用美科利Functional Testing?(美科利功能测试)来推动实现这种改变。
  美科利功能测试组合了美科利QuickTest Professional和美科利WinRunner,形成一种集成产品,它可以充分利用WinRunner和QuickTest Professional的测试脚本。质量工程师可以使用美科利功能测试来创建“复合脚本”,这种脚本由美科利WinRunner和美科利QuickTest Professional的测试构建所组成。美科利功能测试是WinRunner和QuickTest Professional的集成,其测试成果可以在共享的报告界面上显示。
  美科利业务流程测试
  除了上面提到的美科利功能测试解决方案之外,美科利业务流程测试同样能为业务分析人员提供高水平的、脚本自动化的功能测试能力,因此,他们都是美科利质量中心(Mercury Quality Center?)的组成部分。结合使用美科利业务流程测试、美科利WinRunner和美科利QuickTest Professional,非技术型的主题专家就可以及早参与到质量流程中。
  通过此项解决方案,机构可以根据美科利业务流程测试框架中所定义的业务服务水平来衡量应用实施的质量。主题专家能够致力于创建可反映实际业务流程的高水平的测试流程,而质量工程师则可以将精力集中在相关领域,而非自动化流程。
  成功的自动化测试的五个关键因素
  尽管已经有确凿的证据证明,测试自动化是一种经济可行的方法,但是仍然很难确定什么才是实现自动化测试流程转变的最佳途径。在实施自动化软件测试流程的过程中必须遵循的五条基本原理:
  1.形成一个全面的测试计划文档。了解被测应用的目标是成功展开测试工作的关键所在。预先制定一套全面的计划能确保正确实施测试需求。美科利TestDirector能为所有的被测应用管理测试案例和需求。
  2.将测试再次细分成测试案例,实现自动化。机构不可能将测试计划中的所有方面都实现自动化。测试自动化应该集中在那些复杂且关键的业务流程上,根据需求而设计出的这些流程可以映射出应用中的功能点。许多机构发现,大约60%的测试案例实现了自动化,其余40%由手动执行。
  3.创建自动化测试。美科利WinRunner的DataDriver Wizard极大地简化了测试数据和脚本的准备工作,优化了QA资源的使用,促进了更为全面的测试。使用美科利QuickTest Professional,用户无须编制脚本就能创建测试。
  4.使用数据驱动的测试来扩大测试覆盖面。使用美科利QuickTest Professional内置的“数据表(Data-Table)”属性,测试人员可以创建以数据为依靠的测试,它使用存储在Excel电子数据表中的特定关键词来定位应用区域。这样,测试人员就可以从应用中调用大量的测试数据。(注:美科利WinRunner没有内置的数据表,无法提供以上所述的功能。)
  5.增加测试验证。在美科利QuickTest Professional或美科利WinRunner测试中加入该测试实际 “通过或失败”的标准。内置的数据库验证功能可以确认存储在数据库中的值,确保交易的正确性,以及被更新、删除或添加的记录数据完整性。
  总结
  功能测试不必是一项耗时或昂贵的工作。通过自动化功能测试,企业可以进一步提升自动化业务流程的能力。开发和QA小组可以提高测试流程的速度和正确性,IT部门也能够在软件项目中获取更高的ROI,同时降低风险。美科利WinRunner或QuickTest Professional是市场上最为成熟且简单易用的功能测试解决方案,企业选择它们作为其测试自动化的平台,将获益匪浅。

[ 本帖最后由 ykxd 于 2007-6-20 09:29 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2007-6-19 18:09:51 | 显示全部楼层
广告?
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2007-7-3 23:43:02 | 显示全部楼层
谢谢,好文章,有很多可以借鉴的地方,mark
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-4-17 05:41 , Processed in 0.073037 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表