Rational Robot是通过录制用户操作进行功能,性能和兼容性测试的自动化测试工具。通过回放录制脚本进行功能和可靠性测试。本文主要介绍Rational Robot针对java程序和applets如何进行功能测试。
Rational Robot当前版本支持用以下类库开发的Java程序和applet程序:
Java Foundation Classes(JFCs)
Sun的Swing 和 Abstract Windowing Toolkit(AWT)
Symantec的Visual Café
Sitraka Software的JClass库
还有一些Java类超出了Rational Robot支持的范围,但是需要注意的是这些超出Robot支持的Java类中的一些类继承自Rational Robot支持的类。测试人员可以通过编写Java代理来扩展Rational Robot识别对象的能力。使用Java扩展API,需要注意的是,这些代理只能够测试在SUN的JVM上运行的类,并可以运行在Netscape和IE上的程序和Applet。
本文将讨论,Rational Robot怎样使用Java代理并且当需要第三方Java代理的时候怎么做。示范如何开发Java代理,怎样用Java扩展Api支持Rational软件。
Rational Robot怎样用Java代理
执行功能,性能或者可靠性测试的时候,Rational Robot通过AUT监控用户交互进而生成Rational的SQABasic脚本,不必管开发程序的语言是什么,当录制的脚本回放,他通过AUT再现用户的操作行为。测试Java程序和Applets的时候,SQABasic有一套定义好的图形界面(GUI)对象.
表格一:展示了一组SQABasic 测试Java程序和Applect的GUI对象
JavaMenu
JavaMenuItem
CheckBox
RadioButton
ComboBox
ComboListBox
Label
ListBox
ScrollBar
EditBox
TrackBar
TabControl
ProgressBar
JavaPanel
JavaWindow
JavaTree
JavaSplitPanel
JavaSplitter
JavaMenuBar
JavaObject
JavaCheckBoxMenuItem
PushButton
Toolbar
JavaListView
JavaMenuSeparator
JavaTable
JavaCanvas
JavaPopupMenu
JavaTableHeader
这些SQABasic GUI对象表现为他们的属性和功能表现。这些功能定义允许Robot模拟用户操作和对象进行交互。Robot知道怎样处理SQABasic GUI对象。测试Java和applets,Java对象必须映射为SQABasic GUI对象。比如JFC 中的Jbutton组件需要映射为SQABasic 对象的PushButton。
通过反射或者说反映,Rational Robot可以动态地决定加载到JVM中Java GUI组建的类、功能和属性。它使用包含在JavaClassMap.dat中的信息确定什么样的SQABasic对象可以映射到相关类,也可以确定使用什么样的代理与Java组建相互交互。
Rational提供的JavaClass模板被放在项目目录下\TestDatastoe\DefaultTestScriptDataStore\TMS_scripts\dat JavaClassMap.dat信息格式如下:
[SQABasic Object]
Java GUI component=proxy
.jpg)
