IE在测试套件执行时不断最大化和最小化

时间:2013-01-17 06:32:45

标签: selenium internet-explorer-8 automation webdriver selenium-webdriver

我正在使用
Selenium独立服务器 - 2.25.0
IE - 8.0.7601.17514(64位版)
IEDriverServer.exe - 2.28.0(64位)
操作系统 - Windows 7专业版 Java - SDK7

我正在使用下面的代码来启动IE并运行一个简单的测试。

    WebDriver driver = null;
    DesiredCapabilities ieCapabilities = null;
    ieCapabilities = DesiredCapabilities.internetExplorer();
    if (ieCapabilities != null) {
        driver = new InternetExplorerDriver(ieCapabilities);
    }
    driver.get("http://www.yebhi.com/");
    // driver.findElement(By.id("anchSighin")).click();

    driver.findElement(By.xpath("//div/ul/li/a/div/span")).click();
    driver.findElement(By.xpath("//div[80]/a")).click();
    driver.findElement(By.xpath("//div[4]/div/div[2]/div/div[4]/a"))
            .click();
    Thread.sleep(5000);
    driver.findElement(By.xpath("//div[5]/div[4]/div/div[4]/a")).click();
    driver.switchTo().frame(2);
    driver.findElement(By.id("txtMoblogin")).clear();
    driver.findElement(By.id("txtMoblogin")).sendKeys("ghfghghf");
    driver.findElement(By.id("txtMobPass")).clear();
    driver.findElement(By.id("txtMobPass")).sendKeys("hfghgh");
    Thread.sleep(5000);
    driver.findElement(By.id("btnLogin")).click();

通过使用上面的代码我能够启动并运行测试,但有问题 实际问题是the browser is continuously maximizing and minimizing until the test suite get finished.

我在这个问题上挣扎了一个多星期。我不知道天气是不是虫子。如果是错误请解决我。

提前致谢。

1 个答案:

答案 0 :(得分:2)

IE驱动程序正在调整IE窗口的大小,因为您正在截取屏幕截图。它是WebDriver,根据定义,截图是整页的截图。但是,为了在不滚动的情况下拍摄整页的屏幕截图(这会搞定绝对定位的元素),您必须能够在IE中呈现整页。获取整个页面呈现的唯一方法是调整IE窗口的大小,以便在不滚动的情况下显示整个页面。因此,IE驱动程序会自动为屏幕截图API调用调整大小,然后将窗口恢复到调用之前的状态。