Selenium-"等待xxxx" - Chrome

时间:2017-12-05 14:33:48

标签: selenium selenium-chromedriver

网站我正在测试需要从xxxx服务器加载库。

有时需要很长时间和网站显示信息Waiting for xxxx(我使用的是Chrome WebDriver)。

是否可以将其视为错误并使用Selenium捕获它?

1 个答案:

答案 0 :(得分:1)

有时,当需要很长时间并且您看到网站显示信息 Waiting for xxxx 时,实际上并不是错误。这意味着 JavaScripts 和与网站相关联的 AJAX Calls 正在Page Loads执行。一旦JS& AJAX Calls完全执行,页面加载完成。

现在根据您的问题Is it possible to treat it as an error and catch it?,答案为 Yes

这可以通过使用 pageLoadTimeout Sets the amount of time to wait for a page load to complete before throwing an error. 方法来实现

定义为 pageLoadTimeout(long time, java.util.concurrent.TimeUnit unit) ,示例如下:

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

抛出的错误如下:

Exception in thread "main" org.openqa.selenium.TimeoutException: Timeout loading page after 2000ms

您可以在pageLoadTimeout in Selenium not working讨论中找到 pageLoadTimeout 的详细实施。