selenium自动化测试A浏览器页面某个元素点击完,会弹出新浏览器B页面,A和B不在同一个浏览器里面,把B关闭以后,定位不到A浏览器里面页面的元素;怎么解决下。
A和B是不在同一个窗口吧
B关闭后 driver句柄要回到A窗体上才能定位A上面元素
具体参考 https://q.cnblogs.com/q/100953/
String currentWindow = driver.getWindowHandle();//获取当前窗口句柄
Set<String> handles = driver.getWindowHandles();//获取所有窗口句柄(A+B)
Iterator<String> it = handles.iterator();//判断是否等于A句柄,是就继续循环,否则就跳出去,并关闭窗口。
while (it.hasNext()) {
String handle = it.next();
if (currentWindow.equals(handle))
continue;
driver.switchTo().window(handle);
driver.close();//关闭弹出页面
driver.switchTo().window(currentWindow);//转到A窗口
}
谢谢你,现在解决了