我们在safari浏览器上切换到新窗口时遇到问题。下面是我们用于切换窗口的代码。
public void switchToWindow() {
Set<String> availableWindows = driver.getWindowHandles();
for (String strWinHandle : availableWindows) {
driver.switchTo().window(strWinHandle);
}
}
在availableWindows中,它返回所有窗口句柄,但不是切换到新窗口,而是切换到父窗口。 以上代码适用于所有其他浏览器。
Selenium版本 - 3.11.0 Safari版本 - 11.1.1
答案 0 :(得分:0)
您可以尝试以下代码。
public void switchToWindow() {
String curWinHandle = driver.getWindowHandle();
Set<String> availableWindows = driver.getWindowHandles();
for (String strWinHandle : availableWindows) {
if(!curWinHandle.equals(strWinHandle))
driver.switchTo().window(strWinHandle);
}
}