切换到包含窗口的PDF - Selenium

时间:2016-01-14 18:27:03

标签: java selenium pdf selenium-webdriver

我正在尝试验证是否在点击“生成PDF”时打开了新窗口。超链接。我不需要验证PDF内容,只是希望确保在单击测试链接时打开一个新窗口。

我已经尝试过下面的窗口句柄代码,但它没有工作...... !!!

linetype

请帮我一些建议....谢谢!

2 个答案:

答案 0 :(得分:0)

因此,如果您只需要检查新窗口是否打开:

int oldWindowCount = driver.getWindowHandles().size();
driver.findElement(<By locator for hyperlink here>).click();
int newWindowCount = driver.getWindowHandles().size();
Assert.assertEquals(1, newWindowCount - oldWindowCount);

假设您打开的窗口不超过两个,如果您想在当前窗口和新窗口之间切换:

String oldWindow = driver.getWindowHandle();
driver.findElement(<By locator for hyperlink here>).click();
for (String handle : driver.getWindowHandles()) {
    if (!handle.equals(oldWindow)) {
        driver.switchTo().window(handle);
    }
}

答案 1 :(得分:0)

单击“生成PDF链接”时,有两种方法可以实现,

  1. 新的浏览器窗口打开
  2. 新的基于操作系统(基于桌面的)窗口打开。
  3. 如果它是基于浏览器的窗口,您应该能够使用计时器或getWindowHandles进行调试

    如果是基于桌面的窗口,请使用ROBOT框架

    http://robotframework.googlecode.com/hg/doc/quickstart/quickstart.html

    或AutoIT是不错的选择

    AUTO IT reference to handle windows pop up