如何查找所有打开的Firefox网页标题

时间:2014-05-31 08:25:21

标签: selenium-webdriver

我要求关闭所有已打开的Firefox页面&标签除了几页。

在一个Firefox实例中,我可能会打开雅虎,谷歌,微软,GMail,Facebook。 在另一个Firefox实例中,我可能已经打开了Youtube,Adsense,StackOverflow等......

在开始执行我的Selenium Test Suite之前,我想关闭所有Firefox页面,除了GMail&的Youtube。

在QTP中,我们可以使用ChildObjects("Browser")来实现这一目标。

有人可以告诉我实现这个的Java代码吗?

1 个答案:

答案 0 :(得分:0)

根据您可以执行操作的页面标题。打开所有窗口后,您应该使用WindowHandlers逐个切换到所有窗口并获取它们的图块。通过检查标题,您可以关闭所有您想要的窗口。

 Set<String> windows=driver.getWindowHandles();
    Iterator itr=(Iterator) windows.iterator();
    while(itr.hasMoreElements())
    {
        driver.switchTo().window((String)itr.nextElement());
        System.out.println("Window title is"+driver.getTitle());
        if(!driver.getTitle().contains("gmail")||driver.getTitle().contains("youtube")))
            driver.close();
    }