尝试使用ieDriver.switchTo().window(windowHandle)
方法切换到弹出窗口但我的测试脚本停止并且不继续。
当我手动关闭窗口时,我收到错误
org.openqa.selenium.NoSuchWindowException: Unable to get browser
我知道窗口存在,因为我使用ieDriver.getWindowHandles()
方法来检索它。
我所有的保护模式设置都是一样的,我甚至尝试使用'INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS'
技术无效。还有其他建议吗?
我在Windows 7计算机上使用IE9运行selenium 2.32.0。
答案 0 :(得分:1)
以上代码用于处理窗口弹出窗口。 如果您想处理警报或确认弹出窗口等javascript弹出窗口,则需要使用
driver.SwitchTo.alert()接受();
或
driver.SwitchTo.alert()驳回();
希望它能帮到你
答案 1 :(得分:0)
也许用iframe生成弹出窗口,然后你必须使用switchTo.frame();
答案 2 :(得分:0)
您应该执行以下操作:
WebDriverWait webDriverWait= new WebDriverWait(driver, 5000);
webDriverWait.until(ExpectedConditions.alertIsPresent());
driver.switchTo().alert().accept();
首先,您将初始化一个WebDriverWait对象,该对象将允许您等到满足某些条件,在这种情况下 - 存在警报。 然后,驱动程序将切换到此警报,