webdriver获取新窗口

webdriver是根据句柄来识别窗口的,因为句柄可以看做是窗口的唯一标识id。

获取新窗口的思路是:先获取当前窗口句柄,然后获取所有窗口的句柄,通过排除当前句柄,来确定新窗口的句柄。

获取到新窗口句柄后,通过switchto.window(newwindow_handle)方法,将新窗口的句柄当参数传入就可以捕获到新窗口了。

具体步骤如下:

在webdriver中,可以用getWindowHandle方法来获取当前的窗口句柄;getWindowHandles获取全部窗口句柄

实现代码如下:

//得到当前窗口的句柄
			String b1=driver.getWindowHandle();
			//得到所有窗口的句柄
			Set<String> bs=driver.getWindowHandles();
			//飞哥说这个是迭代器
			Iterator<String> it = bs.iterator();
			while(it.hasNext())
			{
				String he=it.next();
				if(b1.equals(he))continue;
				driver.switchTo().window(he);
				System.out.println("当前页面title为:"+driver.getTitle());
			}

猜你喜欢

转载自xiaojingjing.iteye.com/blog/2264538