Selenium не находит существующий элемент
#1
Отправлено 14 августа 2011 - 19:04
И скажите правильно ли, оборачивать WebDriver в WebDriverBackedSelenium, если тесты пишутся с нуля ?
PS
Тест на Java под IE8
#2
Отправлено 14 августа 2011 - 20:54
Ничего не надо предпринимать. Страница сама автоматически проскроллируется.Что можно предпринять в Selenium WebDriver, если нужный элемент находится за областью просмотра, есть ли какой нибудь скролл к этому элементу ?
Неправильно. WebDriverBackedSelenium -- это всего лишь эмулятор старого API на новом движке. Он нужен только для миграции старых тестов.И скажите правильно ли, оборачивать WebDriver в WebDriverBackedSelenium, если тесты пишутся с нуля ?
Рекомендую почитать вот эту пояснительную заметку.
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#3
Отправлено 14 августа 2011 - 21:41
/* Выполняем нажатие на пиктограмме "Добавить пользователей" */
driver.findElement(By.name("edit_group_members_contents_Image_0")).click();
/* Переходим во фрейм справочника организационной структуры */
driver.switchTo().frame(0);Если окно браузера развернуто на весь экран, то этот код выполняется, если окно не развернуто, то появляются исключения
(не знаю с чем связано, но сначала получал одно исключение, теперь другое)
На клик вываливалось: ElementNotVisibleException (иконка действительно не видна в не развернутом окне, я стал его разворачивать и отписал на форуме)
На фрейм: NoSuchFrameException (я так понял клик не прошел и фрейм не появился, это я после Вашего ответа решил перепроверить)
Если запускаю тест и разворачиваю окно, то все проходит нормально.
PS
Кстати да, я обратил внимание, действительно скролл есть, но почему-то не к этому img, будет время попробую другие локаторы на этот элемент и его родителей.
#4
Отправлено 15 августа 2011 - 07:43
/* Выполняем нажатие на пиктограмме "Добавить пользователей" */ driver.findElement(By.name("edit_group_members_contents_Image_0")).click(); /* Переходим во фрейм справочника организационной структуры */ driver.switchTo().frame(0);
Если окно браузера развернуто на весь экран, то этот код выполняется, если окно не развернуто, то появляются исключения
(не знаю с чем связано, но сначала получал одно исключение, теперь другое)
На клик вываливалось: ElementNotVisibleException (иконка действительно не видна в не развернутом окне, я стал его разворачивать и отписал на форуме)
На фрейм: NoSuchFrameException (я так понял клик не прошел и фрейм не появился, это я после Вашего ответа решил перепроверить)
Если запускаю тест и разворачиваю окно, то все проходит нормально.
PS
Кстати да, я обратил внимание, действительно скролл есть, но почему-то не к этому img, будет время попробую другие локаторы на этот элемент и его родителей.
В своем проекте перед каждым кликом выполняем скрол элемента через JavaScript:
((RemoteWebDriver) webDriver).executeScript("arguments[0].scrollIntoView()", elementToBeClicked);
#5
Отправлено 15 августа 2011 - 08:05
Но я бы предположил, что эта картинка на самом деле не видна. Может быть она становится видимой, например, только при наведении мыши (а до этого на её месте видна другая картинка).
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных

