1

在我的应用程序中,通过单击保存按钮,对话框会提示带有确定按钮的消息。在录制“确定按钮”时,会录制并显示“text_ok().click(atpoint(11,8));”。但在播放过程中,它向我显示“找不到对象”错误。最近更新了 RFT 版本 8.2.2.1,之后只看到了这个问题。谁能告诉我如何解决这个问题或用java编写任何代码。

因此,我的回归正在等待,您的帮助非常可观。提前致谢。

4

2 回答 2

1

你没有提到它是什么类型的对话窗口。但是您可以尝试 RFT 的 IWindow API 来查找活动的顶部窗口并执行如下指定的单击。
例如,以下代码可以通过调用来处理 html 中的警报对话框

  handleDialogButton("Message from Webpage", "ok");   

或者,通过调用单击记事本字体对话框(格式>字体)上的canel按钮

      handleDialogButton("font","cancel"); 

--------示例代码----

/*
 * Activates the top window with the given caption and clicks on the child control(window) with the specified text
 * @param caption- Caption of the Dialog window
 * @param btnToClick- Text of the button(any other control) to click 
 */
void handleDialogButton(String caption,String btnToClick)
{
    IWindow[] windows = getTopWindows();
    for(IWindow window: windows)
    {           
        if(window.getText().equalsIgnoreCase(caption))
        {       
            window.activate();
            //window.close(); //we can just close it also n break.              
   IWindow[] children = window.getChildren(); // OR go thru the children to get the child 
            for(IWindow child:children)
            {               
                if(child.getText().equalsIgnoreCase(btnToClick))
                {
                    child.click();                      
                    break;
                }
            }           
        }
    }
    unregisterAll();
}
于 2012-10-02T07:10:04.520 回答
-1

从 Selenium Web 驱动程序 API 的角度来看,我建议您执行以下操作:

Alert alert = driver.switchTo().alert(); 
   alert.accept();

希望这对你有用

于 2012-10-01T11:54:49.713 回答