selenium2实现窗口跳转
本帖最后由 AT懒汉 于 2015-8-11 21:21 编辑在AT过程中,不可避免的要经常进行窗口的跳转。下面是笔者在对多窗口(2个)进行操作时封装的2个方法
public static WebDriver driver ;(具体的看使用的浏览器的种类再进行具体的实例化)public staticString currentWindow = null;
//跳转至弹出窗口 public static void switchToSecWindow()
{
currentWindow = driver.getWindowHandle();
Set<String> handles = driver.getWindowHandles();
Iterator<String> it = handles.iterator();
while (it.hasNext())
{
if (currentWindow == it.next())
{
continue;
}
driver.switchTo().window(it.next());
}
}
//跳回主窗口
public static void switchToMainWindow()
{
driver.switchTo().window(currentWindow);
}
请问下 Iterator<String> it = handles.iterator();这句 是什么意思么 selenium2实现窗口跳转主要是通过获取窗口的句柄实现窗口之间的切换,handles.iterator();
支持分享 Set<String> handles = driver.getWindowHandles(); 将获得的窗口句柄放在set 集合内
Iterator<String> it = handles.iterator(); 迭代器,一般在集合里面的东西,都用这个来读取数据 我原来也用的这段代码,不过不太严谨。
我在这优化了一下:
http://bbs.51testing.com/thread-1054628-1-1.html 使用ie浏览器时,打开新窗口时,第一个窗口已经关闭了,这个时候selenium无法激活到新窗口了。请楼主有什么好办法吗? testingid135 发表于 2015-8-12 09:28
请问下 Iterator it = handles.iterator();这句 是什么意思么
http://blog.tianya.cn/post-5217390-85126663-1.shtml jingzizx 发表于 2015-8-12 10:52
selenium2实现窗口跳转主要是通过获取窗口的句柄实现窗口之间的切换,handles.iterator();
支持分享
咨询个问题,如果我这个弹出窗口是用layer实现的,我该怎么处理 Wei测试 发表于 2015-8-22 15:06
使用ie浏览器时,打开新窗口时,第一个窗口已经关闭了,这个时候selenium无法激活到新窗口了。请楼主有什么 ...
没有遇到过,这样你贴一下代码
页:
[1]