|
|||||
![]() |
|||||
| 您现在的位置: 软件测试时代 >> 自动测试技术 >> Rational工具 >> 文章正文 |
|
||||||||||||||||||||||
| 使用 Rational Functional Tester 进行 GVT | ||||||||||||||||||||||
| 用于最大化复用您的测试套件的工具和最佳实践 | ||||||||||||||||||||||
作者:Pietro G… 文章来源:IBM 点击数: 更新时间:2006-11-8 ![]() |
||||||||||||||||||||||
日本的 IBM Center of Excellence 和罗马的 IBM Tivoli 实验室正一同开发一套最佳实践和工具,让 Rational Functional Tester 的自动化套件在 GVT(全球化验证测试,Globalization Verification Testing)阶段可以进行复用,从而提高团队的生产力。作者揭示了他们所使用的过程和最终的结果。 在过去的几年,那些可以帮助编程人员更快的创建应用程序的工具(尤其是那些拥有图形用户界面的工具)确实卓有成效地提高了编程人员的生产力。 因此,测试员要求使用比以往更短的时间在数量日益增长的软件程序上设计并运行更为复杂和更有效率的测试用例。这就必须提高测试团队的效率并且增强内部的协作以最大限度地发挥团队的生产力。 许多测试团队发现自动化测试带给他们所需的优势。自动化测试套件使日常严格的执行一组基本测试用例成为了可能。他们不但帮助评定产品基本功能的品质而且还为测试团队成员节省了时间,使得他们可以把这些时间用于进行更高级别的品质保证测试。此外,最佳实践和业界分享的常规经验教训可以提高开发和管理测试套件的效率,从而可以减少通常很昂贵的测试自动化的花费。 尽管能够减少花费并确认了自动化测试套件的价值,但它必须尽可能多的进行复用以最大化 ROI。在2004年的秋天,罗马的 TWS 测试自动化团队(罗马的 IBM® Tivoli®实验室,意大利)和在 Yamato IBM Center of Excellence 的 DBCS 测试团队(日本)共同合作,把部分测试资源用于为 DBCS 测试寻找一种复用测试脚本的方法,而不是把全部可用资源用于人工测试。这个举动推动了工具的开发,并且在成本允许的情况下,针对 DBCS 测试 引入了一系列的能够复用 已有 Rational Functional Tester 的测试套件的最佳实践。
IBM® Rational® Functional Tester(RFT)是一个面向对象的用于测试使用在 Windows 2000、Windows XP 和 Linux 平台上的 Java、HTML、VB.NET、Microsoft® Windows® 应用软件的自动化测试工具。RFT 提供了两种主要的自动化测试方法:
这两种不同方法最主要的技术区别是在测试套件中被测试应用程序的数据被储存和处理的方式。在快速但不稳定的方法中,数据遍布在几个不同的文件中,但是使用慢速但稳定的方法,应用程序的数据很有逻辑的被组织在一起,并且如何处理这些数据成为了编写测试脚本的一部分。结构化的数据处理不但优化了可维护性,使代码可以重复使用,而且还产生了积极的作用使我们可以有机会为 GVT 重用测试套件。 每一个 RFT 的测试脚本都有一个针对被测试应用的对象图。Functional Tester 测试对象图列举了应用程序中可以使用的测试对象,而无论他们是否展示出来。这个数据用于在脚本重放时识别被测试应用程序的元素。 当使用记录和重放方法时,RFT 自动处理所有的测试对象图细节,而且它还提供操纵对象图的工具。这使用户在测试的过程中获得更大的灵活性和敏捷性,因为您可在必要时做出更改:
在慢速但稳定的方法中,我们发现,所有的测试套件拥有唯一的对象图不会减少测试脚本的性能。此外,它有助于将花费降到最低以及 GVT 测试套件的转化。 当使用 RTF 试图进行多语言自动化测试时,测试者通常使用三种主要的方法:
第三种方法在开发新的发布软件过程中是最有效的,但是在对象图的翻译过程中需要工具的帮助。 在 2004 年间,IBM®Tivoli® Workload Scheduler (TWS)测试团队成立了一个非常小的测试自动化子团队。他们的中期目标是设计并应用一个完善的测试自动化的解决方案,它包含了全部产品的基本功能,并且重点是所有产品的接口。因为他们拥有清晰的工具指导和最佳实践,首先被他们关注的接口是产品的 GUI。 秋季,位于罗马的 TWS 测试团队和 Yamato 的 DBCS 测试团队在 DBCS 测试战略方面达成一致。这两个团队决定投入一部分资金用于找到一种可以为 DBCS 测试重用测试套件的最佳实践。 在2005年年初,我们成功地共同完成了 DBCS 测试战略,并且获得了一些已翻译好的应用于日本语环境的自动化测试脚本。此外,首个版本的全球化工具也可以使用了。从那时开始,我们改进了那个工具,并且我们把所有掌握的知识开发成为最佳实践。 文章的以下部分将介绍全球化工具,引入一种最佳实践,并且提供操作数据。
全球化测试套件共有四个步骤,前两个步骤由我们开发的自动化全球化工具处理(见图1)。 图1. RFT 的自动化测试全球化图 (A)提取信息目录 (B) 替换对象图 (C) 处理硬编码字符串 (D) 使用非英文的数据
在使用自动全球化工具来生成和应用字典时需要考虑几件事情:
缩小并过滤数据
使用变量表达术语 当使用变量表达术语来生成和应用字典时,需要特殊的考虑。这种情况下,字典有必要包含变量并且使用包含变量的字典。在翻译的时,您可以把它作为从一个不连续术语的翻译到另一个不连续术语翻译进行处理。当您从源代码中创建这个字典时,一个变量被定义为特殊字符(比如{0},见图2)。测试套件为变量设定一个特定的值。因此,当使用被翻译的值替换变量时,对象图的代替品需要能够识别变量以能够填充这个特定值。 图2. 使用变量表达术语的例子 当您应用这个定义时,您需要考虑语法。许多语言是 S(主语) + V(谓语) + O(宾语),但不是所有的语言都是这样。比如,日语和韩语是 S+O+V 的结构。(图3 显示了一个翻译的例子。)通过机器辅助的普通翻译例子,在分析与法时,考虑术语的发音部分是很有必要的。 但是在测试套件中创建的字典会从英文源代码和目标语言源代码中提取。这个字典非常简单,它包括了不仅仅是单词,还包括了整个或部分的句子,没有任何关于语音和句子结构的任何信息。它是通过使用基本样式匹配生成的(见图4)。因此,在测试套件中使用字典比使用实际的翻译更加简单。 图3. 普通的翻译 图4. 在测试套件中的翻译 为同样的术语进行多种翻译的可能性 不存在于指定的字典中的术语 相应的正则表达式 图5. 在测试套件中的翻译 对于专用于测试支持软件术语的需要
IBM Tivoli Workload Scheduler 测试团队的经历 在我们学习过程中使用自动化全球化工具时,我们的工作量从2.7个人月的工作量减少到3人天的工作量。这样,所有的人工劳动会被用在处理那些工具所不能支持的特定术语上面。 有 69 个术语中需要人工修改(占到全部修改的3%)。因为如果一个人没有100%正确使用翻译,自动化测试软件是不会工作的,这一点非常重要。 通过准备将不自动化的度量和方法,这个数据的详细分类对实现100%自动化是十分必要的。 有213个条目(11%)的字符串是不需要相应的翻译的。这是被最初列出作为输出的,它与没有翻译的术语混在一起。如之前所说明的那样,通过增加这些术语到术语清单中来忽略和使用过滤器,这是很容易区分开的。我们注册了61个术语作为过滤器对象,结果是在213个术语中出现相同字符串的重复。 图6显示了详细的对象图的分类,在那里有来自产品术语的2092个条目以及106个 IBM Rational Functional Tester 工具使用的条目。这两种情况他们都可以正确地自动翻译(翻译目标 2,267个条目中的97% :产品术语,2092;工具使用,106;以及未知, 69)。 图6. 自动化全球化工具种类对象图数值
通过准许基本的代码品质和把测试者从常规的测试工作中解放出来,自动化帮助增进了测试团队的生产力。尽管几个可获得的最佳实践已经通过降低费用明显地提高了自动化测试的效率,但是我们还是要建议通过尽可能多的开拓自动的方法来最大限度的优化 ROI。 本文描述的翻译工具和最佳实践可以使测试团队以更少的资金获得更多的收益。本文还介绍了如何把资金投入在新技术的开发中,以及如何利用内部合作产生创新和可度量的效益。 |
||||||||||||||||||||||
| 文章录入:seanhe 责任编辑:seanhe | ||||||||||||||||||||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | ||||||||||||||||||||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| 迁移 Rational 测试项目:提… 使用 Rational Robot 实现自… Rational 完成自动化功能测试 Rational Robot压力测试实例 Rational中的数据池(DATAPO… Rational Robot 常用语句 Rational Robot项目移植 决策表:使用IBM Rational F… 在PB中如何使用软件测试工具… 追求代码质量 |
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 关于我们 | | |
| 版权所有(C) 2003-2006 测试时代 北京慧灵科技有限公司 站长:测试时代(TestAge.net) | |