我有类似的东西
HtmlAutomationHelper.clickElementByXpath("//a/img");
SynchronizationHelper.pause(5000);
for (final String windowHandle : getWebDriver().getWindowHandles()) {
HtmlAutomationHelper.switchToWindow(windowHandle);
}
上面的代码将点击按钮并将切换到新窗口。在执行一些操作,即添加用户之后,它将点击添加按钮,该按钮将关闭子窗口。现在我想切换到父窗口并执行进一步的操作。但它没有表现。
我编写了以下代码来切换到父窗口。但似乎没有工作
HtmlAutomationHelper.clickElementByClassName("Button");
SynchronizationHelper.pause(4000);
// final String old = getWebDriver().getWindowHandle();
// HtmlAutomationHelper.switchToWindow(old);
for (final String s : getWebDriver().getWindowHandles())
HtmlAutomationHelper.switchToWindow(s);
在此,它将点击按钮并切换到父窗口。因为我点击了 HtmlAutomationHelper.clickElementByClassName("按钮&#34); 子窗口将关闭,后续代码将切换到父窗口
请帮助解决此问题
答案 0 :(得分:0)
Try this to switch to diff window handles and coming back to parent window
String winHandleBefore = driver.getWindowHandle();
for(String winHandle : driver.getWindowHandles())
{
driver.switchTo().window(winHandle);
}
for (String handle1 : driver.getWindowHandles())
{
driver.switchTo().window(handle1);
}
driver.switchTo().window(winHandleBefore);//switch to parent window