无法切换到主窗口内的浏览器窗口(Selenium Webdriver)
问题描述:
我尝试使用窗口句柄,警报,我也试过不切换窗口。 但这个想法没有为我工作。 一旦我选择元素,一个新的浏览器子窗口打开。现在控制器位于我无法检测到的新子窗口上。需要帮忙。 在打开此子窗口的操作之前,我可以打印到控制台,但不能在此之后打印。 另外我试过JavaScriptExecutor,但它没有工作。无法切换到主窗口内的浏览器窗口(Selenium Webdriver)
我把窗口的屏幕截图看起来像。 您可以看到子窗口是新的,但它在主窗口内部打开,并且控件完全位于其上。
答
在这里,我已经使用机器人类与对话框交互。无需切换窗口。尝试下面的代码。 你好是数据输入:
StringSelection data_to_enter= new StringSelection("Hello");
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(data_to_enter, null);
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
哦......不......它仍然贴在同一点。我想知道在我们控制另一个窗口之前让我们尝试打印一些东西.. – 2014-11-22 16:34:35
真的够了。让我知道它是如何在打印之前进行点击,然后在点击之后进行打印。 – Subh 2014-11-22 16:36:04
在点击它之前打印,但点击后不点击 – 2014-11-22 16:48:36