jquery – 如何检查网页驱动程序中是否完全加载?

我正在编写一些Java Webdriver代码来自动化我的应用程序。如何正确检查页面是否已加载?该应用程序也有一些Ajax调用。

我已经声明了一个隐含的WebDriver等待。

硒为您服务。或至少它尝试最好的。有时它很短,你必须帮助一点。通常的解决方案是Implicit Wait,解决了大多数问题。

如果你真的知道你在做什么,以及为什么要这么做,你可以尝试编写一个通用的方法来检查页面是否被完全加载。但是,对于每个网站和每种情况都不可能做到这一点。

相关问题:Selenium WebDriver : Wait for complex page with JavaScript(JS) to load,看到我的答案。

较短的版本:你永远不会确定。

“正常”负载很容易 – document.readyState.当然,这是由Selenium实现的。有问题的事情是异步请求,AJAX,因为你永远不会告诉它是否做好。今天的大部分网页都拥有永远运行的脚本,并随时轮询服务器。

你可以做的各种事情是在上面的链接。或者像95%的其他人一样,在需要的时候使用Implicit Wait的含义和Explicit Wait ExpectedConditions

例如。点击后,页面上的某些元素应该可见,您需要等待:

WebDriverWait wait = new WebDriverWait(driver, 10);  // you can reuse this one

WebElement elem = driver.findElement(By.id("myInvisibleElement"));
elem.click();
wait.until(ExpectedConditions.visibilityOf(elem));
http://stackoverflow.com/questions/11001030/how-i-can-check-whether-a-page-is-loaded-completely-or-not-in-web-driver

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:jquery – 如何检查网页驱动程序中是否完全加载?