最近用了网络上别人的一段切换窗口的code每次成功了,不错,学习
// 根据Title切换新窗口 public boolean switchToWindow_Title(WebDriver driver, String windowTitle) { boolean flag = false; try { String currentHandle = driver.getWindowHandle(); Set<String> handles = driver.getWindowHandles(); for (String s : handles) { if (s.equals(currentHandle)) continue; else { driver.switchTo().window(s); if (driver.getTitle().contains(windowTitle)) { flag = true; System.out.println("Switch to Window: " + windowTitle + " successfully~~~!"); break; } else continue; } } } catch (NoSuchWindowException e) { System.out.println("Window: " + windowTitle + " cound not find!!!" + e.fillInStackTrace()); flag = false; } return flag; }
// 根据URL切换新窗口 public boolean switchToWindow_Url(WebDriver driver, String windowUrl) { boolean flag = false; try { String currentHandle = driver.getWindowHandle(); Set<String> handles = driver.getWindowHandles(); for (String s : handles) { if (s.equals(currentHandle)) continue; else { driver.switchTo().window(s); if (driver.getCurrentUrl().contains(windowUrl)) { flag = true; System.out.println("Switch to Window: " + windowUrl + " successfully~~~!"); break; } else continue; } } } catch (NoSuchWindowException e) { System.out.println("Window: " + windowUrl + " cound not find!!!" + e.fillInStackTrace()); flag = false; } return flag; }