RFT 无法识别弹出的窗口

Q:

我在使用Rational Functional Tester自动测试工具时,录制了一段程序新建资源,由于数据库中不存在该资源,自动弹出一个不可最小化
的窗口其.class 为Html.Dialog,提示不存在该资源,有一个确定按钮.class为 Html.DialogButton。在回放过程中无法识别该窗口也就找不到
这个确定按钮,产生日志报错。

A1:

你试试这个方法。我是从另外一篇文章里看的,不知道行不行。

为了处理一个未期望的活动窗口,修改脚本:

1. 添加一个方法来重载 onTestObjectMethodException 事件。

2. 添加 if 语句来判断 WindowActivateFailedException 异常是否发生。在这个循环中,调用 Iwindow接口来获取导致问题的活动窗口的信息。

3. 在调用 IWindow 接口下添加一个 if 语句来判断是否活动窗口已经出现。如果出现了,发送一个回车命令给它。活动窗口接到回车命令后,在期望的对象上执行命令。

代码例子: 

public void onTestObjectMethodException (ITestObjectMethodState testObjectMethodState, TestObject,foundObject)

A2:

是否录制生成的脚本里使用坐标来记录鼠标的点击位置,回放时弹出窗口位置改变导致动作无法完成呢?

我也在用RFT,但我们是直接写code,很少使用它的录制回放功能。通常需要在代码中添加test object,然后通过这些obj来进行UI的相关操作。

RFT目前的版本不能识别java之外语言编写的UI,但它提供了一个对象 iWindow可以识别windows的标准对话框(title和标准控件,如按钮等),相关操作必须手工写code实现,录制代码时Windows标准对话框的操作并不会被记录下来。因此,如果你遇到的对话框是Windows的话就自己在相应的地方加一些控制语句吧,如果是非Windows标准对话框且不是java语言实现的UI的话,就比较困难了。

发布了430 篇原创文章 · 获赞 415 · 访问量 925万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览