Selenium FirefoxDriver页面加载超时

时间:2016-01-05 15:03:52

标签: java sockets selenium-firefoxdriver firefox-driver

有些页面加载速度很慢,因此我需要指定一些页面加载超时..例如60秒后加载过程将被中断。

如何在我的Java应用程序中为Selenium FirefoxDriver指定页面加载超时?

1 个答案:

答案 0 :(得分:0)

我认为您可以使用Selenium支持的显式和隐式等待,您可以在http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp

中看到
<xp:scriptBlock id="scriptBlock5" loaded="false">
        <xp:this.value><![CDATA[dojo.require("dojo.behavior");

Behavior = {
    ".dataview": {
        found: function(node) {

            dojo.addClass(node,".table-striped table-hover table-bordered table-condensed");
            //node.addClass("table-striped table-hover table-bordered table-condensed");
        }
    }
}

dojo.ready(function() {
    dojo.behavior.add(Behavior);
    dojo.behavior.apply();
});

//Make sure that future pagers are also straightened out
dojo.subscribe("partialrefresh-complete", null, function(method, form, refreshId) {
    dojo.behavior.apply();
});]]></xp:this.value>
    </xp:scriptBlock>

或者你可以在页面中等待一些你可能想得到的对象(我用Python编写,但我认为你可以理解它)

WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.get("http://somedomain/url_that_delays_loading");
WebElement myDynamicElement = driver.findElement(By.id("myDynamicElement"));