【问题标题】:Selenium Web Page loading issueSelenium 网页加载问题
【发布时间】:2015-11-18 13:02:09
【问题描述】:
我的问题是..
当我们在浏览器中点击网页的任何 URL 时,页面开始加载。
在顶部,我们得到加载符号,一旦它停止,我们的 selenium 脚本就会继续进行进一步的处理。
但
有时页面需要时间来加载其所有属性。
是否有任何方法等到页面完全加载所有属性。
需要不同于 WebDriverWait 的方法。
【问题讨论】:
标签:
javascript
selenium
testing
selenium-webdriver
automation
【解决方案1】:
您可以使用页面加载超时来定义页面加载所需的时间。
driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);
或者,如果页面包含一些在后台加载的 ajax 组件,您可以在执行其余步骤之前等待此类元素可见。
WebElement myDynamicElement = (new WebDriverWait(driver, 10)).until(ExpectedConditions.visibilityOfElementLocated(By.id("myDynamicElement")));
在上面的代码 sn-p 中,我们定义了一个等待,直到动态 web 元素在网页中可见。
关于webdriver条件的文档可以在here找到