java + selenium将webDriver定位到新窗口
在使用selenium发现一个问题,当selenium操作浏览器时,如果出现打开新窗口,并对新窗口进行操作
会出现错误。错误的原因就是selenium操作的时原先的窗口,没有操作新窗口。
System.out.println(driver.getCurrentUrl()); //用链接的形式 查看selenium操作的窗口
selenium 权柄的定位到新窗口
String FirstHandle = driver.getWindowHandle(); //首先得到最先的窗口 权柄
for(String winHandle : driver.getWindowHandles()) { //得到浏览器所有窗口的权柄为Set集合,遍历
if (winHandle.equals(FirstHandle)) { //如果为 最先的窗口 权柄跳出
continue;
}
driver.switchTo().window(winHandle); //如果不为 最先的窗口 权柄,将 新窗口的操作权柄 给 driver
System.out.println(driver.getCurrentUrl()); //打印是否为新窗口
break;
}