2013-07-29 5 views
0

Проверка элементов с findElements используя обычный метод WebDriver легко, как:проверка наличия или отсутствия элемента с использованием веб-страницы Selenium WebDriver?

boolean exists = driver.findElements(By.id("...")).size() != 0 

элементы инициализируются страница Factory, как:

Но как мы можем проверить в нашей странице, этот элемент присутствует на странице или нет?

+0

который связывание вы используете с 'selenium-webdriver'? –

+0

@Babai: Я использую java с selenium-webdriver –

+0

@vincebowdren assert может просто сбить тестовый тест, что я хочу, принять решение, основанное на элементе, присутствует на странице или нет –

ответ

0

вот что-то я придумал:

public boolean isElementPresent(WebElement we) 
    { 
     try { 

      we.getTagName(); 

     } catch (NoSuchElementException e) { 
      flag = 1; 
     } 
     if (flag == 1) 
      return true; 
     else 
      return false; 
    } 

который является довольно простым, но эффективным способом сделать это ..

0

Метод isDisplayed() должны делать эту работу:

if (filterText.isDisplayed()) { 
    filterText.doStuff(); 
} 
+0

да, он выполнит свою работу, но иногда есть элементы, которые присутствуют, но скрыты в тот конкретный момент времени! это не поймает это, я придумал что-то, посмотрю на него http://stackoverflow.com/a/18145746/2043083 –

+1

Он будет работать только тогда, когда элемент находится на странице. Если нет, он вернет исключение! –

Смежные вопросы