Selenium RC中元素isElementPresent
和isVisible
之间的区别是什么?
selenium.isElementPresent()
和selenium.isVisible()
如果selenium.isElementPresent()
出错,我会在selenium.isVisible()
答案 0 :(得分:20)
isElementPresent() - 此方法基本上测试我们要查找的元素是否存在于页面的某个位置。
isVisible() - 查找display:none样式标记 - 如果我们不小心,这可能会抛出空指针...因此要查看元素是否可见首先检查元素是否存在使用isElementPresent()方法。然后尝试检查元素是否可见!
观察即使我们的元素不可见,isElementPresent()也不介意。
对于前: 让我们说以下是我的测试应用程序中组件的html代码:
现在,如果您使用
测试上述组件selenium.isElementPresent("testinput") - returns true!
selenium.isVisible("testinput") - returns false!
答案 1 :(得分:11)
阅读the documentation怎么样?
boolean isElementPresent(java.lang.String locator)
验证指定的元素是否在页面上的某个位置。
boolean isVisible(java.lang.String locator)
确定指定的元素是否可见。一个元素可以 通过设置CSS“visibility”属性使其不可见 对于元素,“隐藏”或“显示”属性为“无” 本身或一个如果它的祖先。如果元素,此方法将失败 不存在。