使用带有 java 的 Selenium WebDriver 断言 WebElement 不存在

新手上路,请多包涵

在我编写的测试中,如果我想断言页面上存在 WebElement,我可以做一个简单的事情:

 driver.findElement(By.linkText("Test Search"));

如果它存在,这将通过,如果它不存在,它将被炸毁。但是现在我想断言链接 存在。我不清楚如何执行此操作,因为上面的代码不返回布尔值。

编辑 这就是我想出自己的解决方法的方式,我想知道是否还有更好的方法。

 public static void assertLinkNotPresent (WebDriver driver, String text) throws Exception {
List<WebElement> bob = driver.findElements(By.linkText(text));
  if (bob.isEmpty() == false) {
    throw new Exception (text + " (Link is present)");
  }
}

原文由 True_Blue 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 450
2 个回答

不确定您指的是哪个版本的 selenium,但是 selenium * 中的一些命令现在可以执行此操作: http ://release.seleniumhq.org/selenium-core/0.8.0/reference.html

  • assertNotSomethingSelected
  • 断言文本不存在

ETC..

原文由 Andre 发布,翻译遵循 CC BY-SA 3.0 许可协议

这样做更容易:

 driver.findElements(By.linkText("myLinkText")).size() < 1

原文由 Sarhanis 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题