[英]How to handle Javascript Alert/pop up window in selenium webdriver
[英]Handle Window Pop Up in Selenium
我正在使用Selenium,现在有一个条件:
当我点击网页上的按钮时,会弹出一个窗口。
现在,我必须单击一个单选按钮(即使我们发送TAB,也可以选择两个),然后单击确定按钮。 我在网上搜索并了解“ driver.getWindowHandle()
”。
但是我不知道如何处理新打开的窗口弹出窗口。 在这方面需要帮助。
为了进行切换,您可以使用增强型for循环:
for (String winHandle : objDriver.getWindowHandles()) {
objDriver.switchTo().window(winHandle);
}
因此它将控制从一个驱动程序窗口切换到子窗口。
要与窗口上的元素进行交互,请尝试使用您使用的任何工具查找元素,然后在切换到窗口后执行所需的操作。
要返回到父窗口,可以使用相同的循环或使用:
driver.switchTo().defaultContent();
在这篇文章中检查我的答案,并阅读注释,以帮助您了解getWindowHandle()和getWindowHandles()之间的区别
我们在Windows / IE C#项目中使用AutoItX- https: //www.autoitscript.com/site/处理了这种情况:
AutoItX3 autoIt = new AutoItX3();
var handle = autoIt.WinWaitActive("[window title]", "", 20);
Assert.IsTrue(handle != 0", string.Format("Was not able to find: {0}", [window title]);
autoIt.Send("{ESCAPE}"); // tab may work as well for selection
弹出窗口是Windows窗口,而不是IE的一部分,因此WebDriver对此一无所知。 希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.