Перейти к содержимому

Фотография

поиск элементов-результатов фильтрации

невидимый элемент

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 Gala_Fedorova

Gala_Fedorova

    Новый участник

  • Members
  • Pip
  • 4 сообщений


Отправлено 12 июня 2017 - 13:55

Добрый день.

Нужна подсказка.

Часть задания звучит так: "Перейти в раздел Tags. В строку поиска ввести значение – webdriver. Убедиться, что в результате присутствуют элементы содержащее слово webdriver."

 

Перехожу. Ввожу. Но результаты фильтра тегов не видны при просмотре кода страницы - какой она была до указания фильтра, такой и осталась. При просмотре же выделенной части страницы - результаты видны. Но как к ним обратиться - непонятно.

 

Ошибка выглядит так:

org.junit.ComparisonFailure: 
Expected :javascript
Actual   :webdriver
 
Подозреваю, что нужен javascript. :)
Но проблема в том, что я не знаю, как правильно задать вопрос хоть Google, хоть Yandex.
"Обратиться к невидимому элементу" - вроде бы неверная формулировка, потому что элемент не невидимый...
Очень прошу подсказать, если не похожий пример, то хотя бы что искать в интернете.
 
Спасибо.

  • 0

#2 user12

user12

    Специалист

  • Members
  • PipPipPipPipPip
  • 894 сообщений
  • ФИО:Виктор
  • Город:Минск


Отправлено 12 июня 2017 - 15:38

Не понятно про что вы пишите. Код скиньте хотя бы.

 

Подозреваю, что нужен javascript. :)

 

 

 

Какой javascript ? о чём вы


  • 0

#3 Gala_Fedorova

Gala_Fedorova

    Новый участник

  • Members
  • Pip
  • 4 сообщений


Отправлено 12 июня 2017 - 18:56

Эх... тут писали, что не нужно озвучивать и конкретизировать тестовые задания.

Конкретики - минимум.
Сайт http://stackoverflow.com/,  на нём нужно перейти в раздел Tags, в строку поиска ввести значение – webdriver. Убедиться, что в результате присутствуют элементы, содержащее слово webdriver.
Если я ввожу в строке поиска (строке фильтрации тегов) заданное значение "
webdriver", то визуально страница меняется. Но в режиме просмотра кода страницы остаётся той же, какой была до ввода слова-фильтра.

Код... ну вот код:

 

List<WebElement> allTags = driver.findElements(By.className("post-tag"));


  • 0

#4 ermakidze

ermakidze

    Новый участник

  • Members
  • Pip
  • 7 сообщений
  • ФИО:Александр

Отправлено 13 июня 2017 - 09:51

Там динамическое содержимое в таблице, после применения фильтра получается ответ от скрипта с кодом HTML, который и отображается. К сожалению найти доступ к элементам не смог. Возможно надо поискать что-то вроде: как найти элементы динамической страницы


  • 0

#5 checo

checo

    Опытный участник

  • Members
  • PipPipPipPip
  • 400 сообщений
  • Город:Н.Новгород

Отправлено 13 июня 2017 - 15:59

Код... ну вот код:

 

List<WebElement> allTags = driver.findElements(By.className("post-tag"));

 

Этот код правильный. И разметка страницы при вводе меняется (не знаю, где вы смотрите, что не меняется).

Во-первых, если вылезает ошибка, нужно смотреть ту строчку, где она вылезает. Ошибка явно из какого-то ассерта, а не при поиске элементов.

Во-вторых, явно же есть задержка между вводом в фильтр и выводом фильтрованных тэгов. Включите фантазию, подумайте, как можно отследить обновление. Это типичная проблема, которую надо уметь решать на проекте, причем не требующая дополнительных технических знаний.


  • 0

#6 Gala_Fedorova

Gala_Fedorova

    Новый участник

  • Members
  • Pip
  • 4 сообщений


Отправлено 13 июня 2017 - 18:17

Там динамическое содержимое в таблице, после применения фильтра получается ответ от скрипта с кодом HTML, который и отображается. К сожалению найти доступ к элементам не смог. Возможно надо поискать что-то вроде: как найти элементы динамической страницы

 

Спасибо.


  • 0

#7 ermakidze

ermakidze

    Новый участник

  • Members
  • Pip
  • 7 сообщений
  • ФИО:Александр

Отправлено 14 июня 2017 - 07:42

 

Код... ну вот код:

 

List<WebElement> allTags = driver.findElements(By.className("post-tag"));

 

Этот код правильный. И разметка страницы при вводе меняется (не знаю, где вы смотрите, что не меняется).

Во-первых, если вылезает ошибка, нужно смотреть ту строчку, где она вылезает. Ошибка явно из какого-то ассерта, а не при поиске элементов.

Во-вторых, явно же есть задержка между вводом в фильтр и выводом фильтрованных тэгов. Включите фантазию, подумайте, как можно отследить обновление. Это типичная проблема, которую надо уметь решать на проекте, причем не требующая дополнительных технических знаний.

 

Если поискать через "исследовать элемент" в Firefox, например, в отфильтрованной таблице, то действительно виден код измененный. Но если при отфильтрованной таблице посмотреть исходный код страницы, то элементы отображаются первоначальные (до применения фильтра). Т. е. со временем исходный код и не меняется. Еще не доводилось работать с такими элементами, не понятно как добраться до нового кода. Из Firebug видно, что по запросу фильтра вернулись фильтрованные результаты таблицы элементе responsetext http://joxi.ru/xAeE8X6CYYeMkA


  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных