如何使用 WebDriver 检查元素是否可见
从硒2.0a2开始,我在检查元素是否可见时遇到问题。WebDriver
WebDriver.findElement
返回 一个,遗憾的是,它不提供方法。我可以通过使用或两者都扔一个来解决这个问题,但这感觉很脏。WebElement
isVisible
WebElement.clear
WebElement.click
ElementNotVisibleException
有什么更好的想法吗?
从硒2.0a2开始,我在检查元素是否可见时遇到问题。WebDriver
WebDriver.findElement
返回 一个,遗憾的是,它不提供方法。我可以通过使用或两者都扔一个来解决这个问题,但这感觉很脏。WebElement
isVisible
WebElement.clear
WebElement.click
ElementNotVisibleException
有什么更好的想法吗?
尽管我回答这个问题有点晚了:
现在,您可以使用 WebElement.isDisplayed()
来检查某个元素是否可见。
注意:
元素可能不可见的原因有很多。硒尝试覆盖了其中的大多数, 但有些边缘情况, 它不能按预期工作.
例如,如果一个元素有 或 ,则返回,但至少在我的测试中,它不能可靠地检测一个元素是否由于CSS定位而被另一个元素覆盖。isDisplayed()
false
display: none
opacity: 0
element instanceof RenderedWebElement
应该工作。