首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebDriverWait不起作用

WebDriverWait不起作用
EN

Stack Overflow用户
提问于 2013-10-21 15:24:29
回答 2查看 10.8K关注 0票数 2

我使用的是Windows8,IE10( 2.37.0),我试图等到元素加载到页面上。我使用了以下代码:

代码语言:javascript
复制
WebDriver driver = new FirefoxDriver();
driver.get("http://abc.com");
WebElement myDynamicElement = (
    new WebDriverWait(driver, 10).until(
    ExpectedConditions.presenceOfElementLocated(By.id("myDynamicElement")));

但它正在抛出一个超时值异常。如果我删除了这段代码,它就能够识别webdriver上的元素。

我在其他浏览器中尝试了与FireFox、Chrome相同的代码,但仍然抛出错误。

任何帮助都是非常感谢的。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-21 21:08:23

您将该等待分配给变量myDynamicElement。如果不给WebElement变量做一些事情,Selenium将抛出超时异常。如果您只想等待元素出现,那么就不需要将它赋值给WebElement变量。

代码语言:javascript
复制
WebDriver driver = new FirefoxDriver();
driver.get("http://abc.com");
new WebDriverWait(driver, 10).until(
    ExpectedConditions.presenceOfElementLocated(By.id("myDynamicElement")));

如果您需要赋值该变量以供以后使用,那么对元素执行一些操作。

代码语言:javascript
复制
WebElement myDynamicElement =
    new WebDriverWait(driver, 10).until(
    ExpectedConditions.presenceOfElementLocated(By.id("myDynamicElement")));
myDynamicElement.isDisplayed();
票数 2
EN

Stack Overflow用户

发布于 2014-09-07 09:15:09

代码语言:javascript
复制
  public static void waitForElementToAppear(Driver driver, By selector, long timeOutInSeconds) {
    WebDriverWait wait = new WebDriverWait(driver, timeOutInSeconds);
    wait.until(ExpectedConditions.visibilityOfElementLocated(selector));
  }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19498560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档