Selenium 2 - RemoteWebDriver和DefaultSelenium之间的IE8差异

时间:2011-05-11 08:50:58

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

背景:我刚刚升级到使用Selenium 2并使用RemoteWebDriver来驱动我的测试。问题是当RemoteWebDriver被实例化时,它会启动一个浏览器(IE8),当我使用DefaultSelenium类来驱动测试时,它与Selenium启动的浏览器的行为不同。

RemoteWebDriver启动的浏览器没有完全加载我测试的网页 - 它在状态栏中显示消息“正在下载图片:空白...”,因此测试无法继续。

我的问题是: DefaultSelenium启动的IE8浏览器与RemoteWebDriver启动的IE8浏览器有什么区别?可以配置吗?

干杯。

3 个答案:

答案 0 :(得分:0)

您可能在IE中遇到保护模式问题。对于使用Selenium WebDriver API(使用RemoteWebDriver)的IE,您需要首先正确配置浏览器。有关IE的正确设置详见Selenium project wiki

另请注意,如果您在与IE相同的计算机上运行测试,则可以完全跳过使用RemoteWebDriver,只需创建InternetExplorerDriver的实例。

答案 1 :(得分:0)

我遇到了完全相同的问题。 Selenium文档表明只要在区域内保持一致,保护模式就可以关闭或打开。我把它全部关闭了。

就测试和代码而言,它在IE9,10,FF,Chrome中完美运行,但IE8只是继续投掷(剩下1项)下载图片:空白...消息。

答案 2 :(得分:0)

我遇到同样的问题,你可以找到一个错误here,但它被设置为无效... 在我的情况下,如果我点击我正在加载的页面,它将完成下载丢失的任何项目。但这对于自动化测试来说是不可能的。

这是一种解决方法:

        driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);
        try {
            driver.get("http://127.0.0.1:8080/prixgrumes/");
        } catch (TimeoutException e){
            // Do nothing (IE problem ...)
        }

10秒后,它将继续而不等待元素。