有没有办法等待表使用selenium与java完全加载? 在我的例子中,它看起来像使用ajax和/或jquery加载的表。 到目前为止,唯一可能的解决方案我可以找到它,所以简单地在一毫秒内完成超时/暂停。 我正在寻找更高级的解决方案,而不是硬编码的解决方案。 谢谢
答案 0 :(得分:3)
Selenium提供WebDriverWait
ExpectedConditions.visibilityOfElementLocated
来等待DOM
上可见的元素。你应该尝试如下: -
WebDriverWait wait = new WebDriverWait(driver, 30);
WebElement el = wait.until(ExpectedConditions.visibilityOfElementLocated(By...));
注意: - 在此,您可以By
,.id()
,.className()
,.xpath()
等提供.cssSelector()
定位器。你的表元素。它将等待30
秒来检查DOM
上您的表格的可见性。
如果30 seconds
中的元素不可见,则会抛出TimeoutException
异常。
例如: - 如果您想使用id
检查表格的可见性,只需运行wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("your table id")));
您也可以增加或减少超时..
希望它会对你有所帮助.. :)