1、通过窗口的标题去跳转新窗口
String parentWin=this.getWindowHandle();//获取当前窗口的句柄
Set<String> allWindowsId = driver.getWindowHandles();//获取所有窗口句柄
for(String windowId :allWindowsId){
if(driver.switchTo().window(windowId).getTitle().contains("市场")){
driver.switchTo().window(windowId);
break;
}
}
Assert.assertEquals("国云数据市场", driver.getTitle());
System.out.println("New page title is:" + driver.getTitle());
2、通过tab的id,跳到最后一个tab页
Set<String> winSet = this.driver.getWindowHandles();//获取所有句柄
List<String> winList = new ArrayList<String>(winSet);//转成list列表
String newTab = winList.get(winList.size() - 2);//定义新的tab页是倒数第二个页面
driver.close(); // close the original tab 关闭最后一个
driver.switchTo().window(newTab); // switch to new tab 跳到原来的倒数第二个
Thread.sleep(1000);
另一种通过index的值去确定
Set<String> allWindowsId = driver.getWindowHandles();//获取所有窗口句柄
// List<String> winList=new ArrayList<String>(allWindowsId);
driver.switchTo().window(allWindowsId.toArray()[allWindowsId.size() - 1].toString()); //跳到最后一个tab页
Assert.assertEquals("国云数据市场", driver.getTitle());
System.out.println("New page title is:" + driver.getTitle());