在一个页面上点击一个链接之后,并不是在当前页面上打开,而是重新打开一个新页面;这种情况下如何跳转到新的页面上操作?
首先,需要了解的是每个窗口都有句柄的,可以理解为浏览器窗口的唯一标识符,根据这个标识符来确定新打开的窗口:
先获取当前窗口的句柄,
String current_handle = driver.getWindowHandle();
打开新窗口后获取所有窗口的句柄,
Set all_handles = driver.getWindowHandles();
通过循环判断是不是当前的窗口句柄,
Iterator it = all_handles.iterator();
while(it.hasnext()){
if(it.next() == current_handle){
continue;
}
//跳入新窗口
WebDriver new_driver = driver.switchTo().window(it.next());
}
新窗口的driver为new_driver,若要跳回之前的窗口,则使用如下:
driver.switchTo().window(current_handle);
原文链接:https://blog.csdn.net/x12c345/article/details/78119561