WebDriver-处理HTML弹出窗口

时间:2014-04-19 14:17:26

标签: java selenium selenium-webdriver webdriver

我正试图越过登录页面上方的窗口 注意,因为html类名是动态的,我没有把它们放在我的xpath中

网站 - > seatseller.travel // 目标 - > 单击“商品”页面的“取消”按钮(它仅显示ONCE并将其作为属性保存在浏览器的本地存储中) 注意:因为html类名是动态的,所以我没有把它们放在我的xpath中

我尝试过所有可行的解决方案:1)尝试保持帧; 2)尝试将其作为警报失败..

任何工作解决方案都将成为礼物

先谢谢

公共课dhmaka {

    /**
     * @param args
     * @throws InterruptedException 
     * @throws IOException 
     */
    public static void main(String[] args) throws InterruptedException, IOException {



        // TODO Auto-generated method stub
        WebDriver driver = new FirefoxDriver();
        driver.get("https://in3.seatseller.travel/");
        driver.manage().window().maximize();
         // Exit Summer Dhamaka Frame ..
        String currentWindow = driver.getWindowHandle();

        Set<String> handles = driver.getWindowHandles();
        Iterator<String> iterator = handles.iterator();
        String subWindowHandler = null;
        while (iterator.hasNext()){
            subWindowHandler = iterator.next();
        }
        driver.switchTo().window(subWindowHandler);             
        System.out.println(subWindowHandler);
        driver.switchTo().window(subWindowHandler);                 
        driver.findElement(By.name("//div[@class = 'popupContent']/div/div[2]")).click();
        driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
        driver.close();
    }

}

1 个答案:

答案 0 :(得分:0)

您应该使用By.XPath()而不是By.name(),因为您提供的实际上是XPATH。

这应该有效。