Разница между isElementPresent и isVisible в селене RC

в чем разница между element isElementPresent и isVisible в Selenium RC. Я получаю true для

selenium.isElementPresent() и selenium.isVisible()

если я получу false для selenium.isElementPresent() Я получаю исключение на selenium.isVisible()

2 ответов


isElementPresent() - этот метод в основном проверяет, присутствует ли элемент, который мы ищем, где-то на странице.

isVisible() - ищет display: none style tag-это может бросить нулевой указатель, если мы не будем осторожны...таким образом, чтобы увидеть, виден ли элемент, сначала проверьте, присутствует ли элемент с помощью метода isElementPresent (). Затем попробуйте проверить, виден ли элемент!

обратите внимание, что isElementPresent() не будет возражать, даже если наш элемент не виден.

для ex: скажем, ниже приведен html-код для компонента в моем тестовом приложении:

теперь, если вы проверить их компонентов с

selenium.isElementPresent("testinput") - returns true!
selenium.isVisible("testinput") - returns false!

Как насчет чтения документация?

boolean isElementPresent (java.ленг.String locator)

проверяет, что указанный элемент находится где-то на странице.

boolean isVisible (java.ленг.String locator)

определяет, является ли указанный элемент. Элемент может быть отображается невидимым, устанавливая CSS "видимость" свойство "скрытый", или "display" свойство "none", либо для элемента сам или если его предки. Этот метод завершится ошибкой, если элемент нет.