更新时间:2021-10-25 15:13
IBM Rational Functional Tester(简称RFT)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和GUI开发人员。使用它,测试新手可以简化复杂的测试任务,很快上手;测试专家能够通过选择工业标准化的脚本语言,实现各种高级定制功能。通过IBM的最新专利技术,例如基于Wizard的智能数据驱动的软件测试技术、提高测试脚本重用的ScriptAssurance技术等等,大大提高了脚本的易用性和可维护能力。同时,它第一次为Java和Web测试人员,提供了和开发人员同样的操作平台(Eclipse),并通过提供与IBM Rational整个测试生命周期软件的完美集成,真正实现了一个平台统一整个软件开发团队的能力。
Rational Functional Tester 的基础是针对于Java、.NET的对象技术和基于 Web 应用程序的录制、回放功能。工具为测试者的活动提供的自动化的帮助,如数据驱动测试。
当您记录脚本时,Rational Functional Tester 会为被测的应用程序自动创建测试对象地图。对象地图中包含了对每个对象的识别属性。当您在对象地图中更新记录信息时,任何使用了该对象地图的脚本会共享更新的信息,减少了维护的成本及整个脚本开发的复杂度。对象地图还为您提供快速的方法向脚本中添加对象。它列出应用程序中涉及到的测试对象,不论它们当前是否可视。您可以通过依据现有地图或按需添加对象来创建新的测试对象地图。
在记录过程中您可以将验证点插入到脚本中以确定在被测应用程序建立过程中对象的状态。验证点获取对象信息(根据验证点的类型,可以是对象属性验证点或五种数据验证点之一 -- 菜单层次、表格、文本、树形层次,或列表)并在基本数据文件中存储。文件中的信息成为随后的建立过程中对象的期望状态。在执行完测试之后,您可以使用验证点比较器(Verification Point Comparator) 进行分析,并且如果对象的行为变化了就更新基线(期望的对象状态)。
回放更新的应用程序脚本。ScriptAssure 特性是 Rational Functional Tester 的对象识别技术,可以使您成功地回放脚本,甚至在您的被测应用程序已经更新的时候。您可以为测试对象必须通过的、用来作为识别候选的识别记分设置门槛,并且如果 Rational Functional Tester 接受了一个分值高于指定门槛的候选,您还可以向日志文件中写入警告。
更新对象的识别属性。在测试对象地图中,您可以对所选的测试对象更新识别到的属性。Rational Functional Tester 显示了 Update Recognition Properties 页,其显示出更新的测试对象属性、原始的识别属性和对象所有的识别属性。如果必要,您可以修改更新的识别属性。
合并多个测试对象地图。对象地图要么是共享的要么是专用的。专用地图附属于一个脚本并只由具体的脚本进行访问,反之,共享的地图由多个脚本共享。共享地图的优势是,当需要更新对象时,只有对应一个地图的一个更新会确定多个脚本。您可以在 Rational Functional Tester 的项目视图中并且在创建新测试对象地图时,将多个私有的或共享的测试对象地图合并成一个单个的共享测试对象地图。Rational Functional Tester 可以随意地更新您所选择的指向新合并的测试对象地图的脚本。
显示相关的脚本。在测试对象地图中,您可以观察到一列表与地图相关的脚本,且可以使用该列表来选择要添加测试对象的多个脚本。
使用基于模式的对象识别。您可以用正则表达式或一个数值范围来代替允许基于模式的识别。允许对象识别具有更好的灵活性。您可以将属性转变成验证点编辑器(Verification Point Editor) 或测试对象地图中的正则表达式和数值范围。正则表达式计算器(Regular Expression Evaluator) 允许您在编辑表达式时进行测试,这节省下了不得不运行脚本观察模式是否工作的时间。
集成 UCM。Rational Functional Tester 在 ClearCase统一变更管理(Unified Change Management,UCM)的视图中。Rational Functional Tester 中创建的工件是可以进行版本控制的。
Rational Functional Tester 的两个版本共享这些基本特性,且都为已知的被测应用程序生成(一般来说)同样的脚本。重要的是要注意,因为它您在任何已知时间选择任何一个最适合您需要的环境或语言。如果您现在开始使用 Rational Functional Tester 的 Visual Basic .NET 版本,而在六个月后您想转换成 Java 的版本,您不需要学习完全不同的工具。两个版本基本上一致,您可以对一个工具中的任何投资(时间或金钱)都能够沿用到另一个工具中。为了证明这点,本章节将带您在每个环境中进行记录并执行实例脚本,并在最后比较结果脚本。依照任何一个此时适合您需要环境的步骤,并对比另一个环境的步骤以了解这些步骤有多么类似。