选择值后,子窗口关闭,无法将焦点置于父窗口

时间:2015-11-09 09:07:03

标签: windows selenium

如果我单击父窗口上的链接,子窗口将打开,在子窗口中选择一个值后,子窗口将自动关闭,并且控件仍处于关闭窗口中。如何将控件恢复到父窗口。

代码:

Set<String> windows3 = w.getWindowHandles();
            for(String handles3 : windows3)
            {
                w.switchTo().window(handles3);
                System.out.println(w.getTitle());
            }
            w.switchTo().frame("MainFrame1");
            w.findElement(By.name("close_button")).click();
            w.switchTo().defaultContent();

如果我单击close按钮,子窗口将自动关闭。 w.close() [w是驱动程序类的引用变量 - WebDriver w = new FirefoxDriver();];不在这里工作。单击子窗口中的关闭按钮是必需的。请为此提供解决方案

错误:

Exception in thread "main" org.openqa.selenium.NoSuchWindowException: Unable to get browser (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 13 milliseconds 

1 个答案:

答案 0 :(得分:0)

在切换到子窗口之前,您需要保存父窗口句柄,然后使用该句柄切换回父窗口。

String parentWin=w.getWindowHandle();

  /* Switch Window Code */

w.switchTo().window(parentWin);

语句w.switchTo().defaultContent();正在抛出错误,因为您正在尝试切换到已关闭窗口的默认内容。