【发布时间】:2015-05-18 22:10:04
【问题描述】:
我正在测试用户单击删除按钮和表格条目消失的 UI。因此,我希望能够检查表条目是否不再存在。
我曾尝试使用ExpectedConditions.not() 反转ExpectedConditions.presenceOfElementLocated(),希望这意味着“期望不存在指定元素”。我的代码是这样的:
browser.navigate().to("http://stackoverflow.com");
new WebDriverWait(browser, 1).until(
ExpectedConditions.not(
ExpectedConditions.presenceOfElementLocated(By.id("foo"))));
但是,我发现即使这样做,我也会收到由 NoSuchElementException 引起的 TimeoutExpcetion,表示元素“foo”不存在。当然,没有这样的元素是我想要的,但我不希望抛出异常。
那么我怎样才能等到一个元素不再存在呢?如果可能的话,我更喜欢一个不依赖于捕获异常的示例(据我所知,应该为异常行为抛出异常)。
【问题讨论】:
标签: java selenium selenium-webdriver