分类:
2008-10-15 16:44:25
IBM Rational Functional Tester(RFT)是由 IBM 推出的针对 、 和 Web 应用程序的自动化工具。借助这一工具,人员可以轻松地录制或编写脚本来进行自动化测试,极大地提高了测试效率。但是 RFT 目前不能捕捉到 SWT(Standard Widget Toolkit) 应用程序的对象,不能录制 SWT 应用程序的任何动作。本文介绍了一种解决方法,能够使 RFT 捕捉到 SWT 应用程序的对象,并且采用 AOP(Aspect Oriented Programming)后编译时(Post-Complier weave)的方式把它注入到 SWT 应用程序中。该方法无须更改 SWT 应用程序的源代码,减少了开发代码与测试代码的耦合,在基于 SWT 应用程序的测试中有广泛的应用前景。
1. RFT 及 SWT 简介
本文主要介绍如何用 Rational Functional Tester(RFT)工具测试 SWT 应用程序,因此本节首先简要介绍一下 RFT 和 SWT。
RFT 介绍
RFT(IBM? Rational? Functional Tester)是 IBM 公司研发的一个面向对象的自动测试工具,提供了自动化测试 程序、Web 应用、Eclipse 以及终端应用的解决方案。您可以通过捕捉对象,记录用户操作的过程的方法,动态的生成测试脚本,然后在不断的回放测试脚本自动测试应用程序,提高测试效率。图 1 所示的就是 RFT 对象映射编辑器,从图中可以看出,这些被录制工具加进来的对象组成了树形的结构,每一个对象都有相关的识别属性。例如图中高亮显示的 Button 对象,它的 .class 属性值为 javax.swing.JButton,说明这个对象是 Swing 库的按钮组件。它还有其他属性,每个属性的值后面都跟有权重值,权重值对测试程序运行过程中对象识别非常重要。
图 1. 对象映射编辑器
SWT 介绍
SWT(Standard Widget Toolkit)标准窗口小部件工具箱,编程人员可以使用它来开发适用于 Eclipse 环境的图形用户界面(GUI)以及开发单独的 GUI 本机应用程序。SWT是 一个库,它创建了 Java 版的本地主机操作系统 GUI 控件,依赖于本机实现。这意味着基于 SWT 的应用程序具有以下几个关键特性:
它们的外观、行为和执行类似于“本机”应用程序。
所提供的窗口小部件(widget)反映了主机操作系统上提供的窗口小部件(组件和控件)。
[1]