您的位置: 网界网 > 网络学院-技术开发 > 正文

Rational Robot如何对java程序和applets功能测试

2014年08月22日 14:45:05 | 作者:佚名 | 来源:51CTO | 查看本文手机版

摘要:Rational Robot是通过录制用户操作进行功能,性能和兼容性测试的自动化测试工具。通过回放录制脚本进行功能和可靠性测试。本文主要介绍Rational Robot针对java程序和applets如何进行功能测试。

标签
RationalRobotJavaapplets测试代理

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对象

这些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

图一描述的过程展现了Rational Robot是如何使用代理与Java应用程序交互的。对于Rational 所支持的Java代理类,包含在JavaClassMap。dat 里的信息在Robot内部有效。

图1

此过程是如下工作的

1、在录制的时候,Rational Robot侦查用户和AUT之间的交互;通过反省(+本站微信networkworldweixin),他知道用户与什么样的控间的类交互。

2、Rational Robot使用JavaClassMap。dat文件或者使用Robot内部可接受的相似信息,去决定这个类映射到的SQABasic GUI对象和与Java组件相互影响的代理。

3、然后Rational Robot使用代理学习到关于Java组件的必要信息,生成适当的SQABasic代码。

4、为了回放已录制的代码,SQABasic代码被转化为Robot可调用的适当的函数或者代理类的函数列表。这些列表一次触发被测组件中的适当的函数。

举个例子,模拟一个用户点击一个Java GUI组件(比如:Jbutton),Rational Robot生成如下SQABasic命令:

PushButton Click, recMethod

这里的recMethod是AUT一个唯一可识别的按钮名称。同样的命令别用于所有的按钮,不管它使用什么语言开发的。

什么时候需要第三方得Java代理

如果被开发的应用程序使用任何明确的可支持标准Java GUI组件的类库,那么Rational支持的代理对于与Robot交互的应用程序就足够了。本文中所说的标准Java GUI组件是指类中可被引用的组件。Jbutton, Jtree和Jplanel都是JFCs中标准的Java GUI组件。

如果客户化的类或者它的父类可以被映射到同一个SQABasic对象,那么使用这样的客户化标准Java GUI组件开发的应用程序也是不需要第三方Java代理的。举个例子,如果一个应用程序使用了BeechButton

  • 给力 (0票)
  • 动心 (0票)
  • 废话 (0票)
  • 专业 (0票)
  • 标题党 (0票)
  • 路过 (0票)
[责任编辑:孙可 sun_ke@axissc.com]

快乐飞艇有官方吗 吉林快3计划 快乐飞艇 快乐飞艇微信群 快乐飞艇怎么买 湖南快乐十分官网 快乐赛车代理怎么做的 快乐飞艇哪个网站赔率高 快乐赛车的规律 全天快乐赛车人工计划