2015-10-13 4 views
1

У меня уже есть такая ошибка, и я до сих пор не знаю почему. Что я делаю не так?Selenium + Java = ошибка утверждения

Мне нужно утверждать, что если я получаю текст в источнике страницы.

Так вот мой метод:

public boolean AssertSearch() {     
    return driver.getPageSource().contains("Item found");    
} 

А вот моя утверждают:

assertTrue(buscarnok.validabuscaNOK()); 

И я продолжаю получать сообщение "Утверждение об ошибке". Я не знаю почему. Если я изменю "return driver.getPageSource().contains("Item found");" на driver.findelement(by.id("someID")).isdisplayed();, он отлично работает, так почему же он не работает с getpagesource?

+1

является «находка», содержащейся в источнике или добавлено позже (после того, как поиск сделан)? – ochi

+0

После поиска. Как только поиск будет успешно выполнен, на странице появится сообщение «item found» с данными элемента –

+1

Затем текст не найден в источнике страницы, не так ли? Вы хотите найти текст (в HTML) – ochi

ответ

1

Если текст, который вы ищете, изначально не находится на странице или если он скрыт, он может и не найти его.

попробовать что-то вроде этого:

String bodyText = driver.findElement(By.tagName("body")).getText(); 
Assert.assertTrue("Item Found", bodyText.contains(text)); 

Вы можете сузить поиск, выбрав другое имя тега или даже div по его class или id

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