如何通过硒的webdriver

问题描述:

在硒测试中打开一个新标签后切换窗口的范围,我通过以下打开一个新标签:如何通过硒的webdriver

actions.keyDown(Keys.CONTROL).click($(By.cssSelector(".btn-xs"))).keyUp(Keys.CONTROL).perform(); 

以上后,我需要切换窗口的范围,检查此选项卡上的某些元素(但我不会使此选项卡可见,应该隐藏,不需要关注)。

我试图通过以下使用WindowHandles:

java.util.Set<String> windowHandles = driver.getWindowHandles(); 

但它仅包含第一初始标签和1个元件(同时有在驱动两个开放标签)。

我该怎么做?

+0

做同样的事情,把它放入一个数组列表,看看你是否能看到第二个选项卡。 – IamBatman

请试试这个

actions.keyDown(Keys.CONTROL).click($(By.cssSelector(".btn-xs"))).keyUp(Keys.CONTROL).perform(); 

//wait for few seconds for loading site 
    for (String windows : driver.getWindowHandles()) { 

       driver.switchTo().window(windows); 

       if (driver.getCurrentUrl().startsWith("xyz.com")) { 

       //Your Operation 
        } 
       if (driver.getCurrentUrl().startsWith("yzx.com")) { 
    //Your Operation 
        } 


      } 

这里我做什么,我点击重定向link.And等待站点load.After重定向几秒钟,我回来的愿望标签链接开始,在那里你可以给其他条件也!

希望它会帮助你

+0

它不工作,因为在wd.getWindowHandles()我只得到一个元素,而不是两个。 – Tatiana

+0

这里没有关于element.windowhandles将检查你的所有标签,并找到你的愿望选项卡 – zsbappa

+0

我的意思是阵列中的对象,我没有得到你的代码的第二个。 – Tatiana