欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

webdriver获取新窗口

程序员文章站 2022-05-02 19:10:21
...

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());
			}