如何处理对话框只包含使用Selenium和Java的关闭按钮

时间:2016-11-08 13:34:18

标签: java selenium

我正在自动化一个网站,它包含一个“提交”按钮,打开一个对话框。在该对话框中,我必须单击“更新”按钮。但是当代码点击“提交”按钮时,我的代码的下一行没有执行,也没有移动到打开对话框。 我试过窗口句柄,切换到警报方法,但它无法正常工作。任何人都可以解决我的问题吗?

1 个答案:

答案 0 :(得分:0)

我不确定你是否可以用硒实现这一点,因为它是一个安全问题。但是,在点击之后,您可以调用AutoIt exe,找到该按钮并单击它:

ControlClick($CmdLine[1], $CmdLine[2], $CmdLine[3]);
//ControlClick ( "title", "text", controlID [, button = "left" [, clicks = 1 [, x [, y]]]] )

另一种选择是使用机器人' Java中的类,一旦它聚焦就发送密钥,例如输入到警报,例如

import java.awt.Robot;
import java.awt.event.KeyEvent;

public void pressEnter(){

    Robot robot = null;
    try {
        robot = new Robot();
    } catch (AWTException e) {
        logger.info("Could not create new Robot");
        e.printStackTrace();
    }

    robot.keyPress(KeyEvent.VK_ENTER);
    robot.keyRelease(KeyEvent.VK_ENTER);

}