PageloadTimeout()无法在IE11中使用selenium 3.4

时间:2017-09-12 11:41:44

标签: java selenium

driver.manage().timeouts().pageLoadTimeout(20,TimeUnit.SECONDS);

当我使用pageLoad使selenium等到页面加载时IE11抛出下面的错误,否则它在chrome和Firefox中工作正常,无论我在@test或我的实际方法中使用它。我正在使用java与selenium 3.4

错误

org.openqa.selenium.InvalidArgumentException: Invalid timeout type specified: page load

2 个答案:

答案 0 :(得分:1)

您可以使用JavascriptExecutor进行网页加载,如下所示:

private static boolean isloadComplete(WebDriver driver)
{
    return ((JavascriptExecutor) driver).executeScript("return document.readyState").equals("loaded")
            || ((JavascriptExecutor) driver).executeScript("return document.readyState").equals("complete");
}

答案 1 :(得分:0)

使用隐式等待代替此,它适用于IE,Chrome和Firefox

driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);

原因:当页面加载时间超过我们的时间时,它会抛出TimeoutException

虽然隐式等待设置了这个,但是在WebDriver实例销毁之前它具有范围。