WaitForElementPresent
#21
Отправлено 19 ноября 2008 - 10:24
#22
Отправлено 10 июня 2013 - 04:32
Появилась проблема при создании элементарного цикла - суть открыть страницу, дождаться появления элемента и продолжить тест.
В цикле не происходит проверка на присутсвие элемента на странице, сразу осуществляется выход из цикла, а если условием цикла поставить var1=1 -проверка почему-то осуществляется и получаем бесконечный цикл, как и должно быть.
Наверное я что-то недопонимаю, помогите пожалуйста, спасибо.
Прикрепленные файлы
#23
Отправлено 10 июня 2013 - 04:42
А IDE вообще поддерживает циклы и условные переходы?Добрый день! Только начал освоение selenium, пока сижу в IDE, т к В ООП не силен пока что.
Появилась проблема при создании элементарного цикла - суть открыть страницу, дождаться появления элемента и продолжить тест.
В цикле не происходит проверка на присутсвие элемента на странице, сразу осуществляется выход из цикла, а если условием цикла поставить var1=1 -проверка почему-то осуществляется и получаем бесконечный цикл, как и должно быть.
Наверное я что-то недопонимаю, помогите пожалуйста, спасибо.
#24
Отправлено 10 июня 2013 - 04:46
Можно еще попробовать storeExpression.Добрый день! Только начал освоение selenium, пока сижу в IDE, т к В ООП не силен пока что.
Появилась проблема при создании элементарного цикла - суть открыть страницу, дождаться появления элемента и продолжить тест.
В цикле не происходит проверка на присутсвие элемента на странице, сразу осуществляется выход из цикла, а если условием цикла поставить var1=1 -проверка почему-то осуществляется и получаем бесконечный цикл, как и должно быть.
Наверное я что-то недопонимаю, помогите пожалуйста, спасибо.
#25
Отправлено 10 июня 2013 - 04:51
Можно еще попробовать storeExpression.
Добрый день! Только начал освоение selenium, пока сижу в IDE, т к В ООП не силен пока что.
Появилась проблема при создании элементарного цикла - суть открыть страницу, дождаться появления элемента и продолжить тест.
В цикле не происходит проверка на присутсвие элемента на странице, сразу осуществляется выход из цикла, а если условием цикла поставить var1=1 -проверка почему-то осуществляется и получаем бесконечный цикл, как и должно быть.
Наверное я что-то недопонимаю, помогите пожалуйста, спасибо.
Поддерживает, если подключить расширение, к тому же бесконечно-то у меня зацикливается, storeExpression пробовал.
#26
Отправлено 10 июня 2013 - 06:58
Это разрешение не является официальным разрешением, а чья-то разработка? Если да, то это ожидаемо.Поддерживает, если подключить расширение, к тому же бесконечно-то у меня зацикливается, storeExpression пробовал.
#27
Отправлено 10 июня 2013 - 08:02
Это разрешение не является официальным разрешением, а чья-то разработка? Если да, то это ожидаемо.
Поддерживает, если подключить расширение, к тому же бесконечно-то у меня зацикливается, storeExpression пробовал.
Оно неофициальное, но, как мне показалось, все им пользуются. Брал тут
#28
Отправлено 10 июня 2013 - 14:03
#29
Отправлено 10 июня 2013 - 18:38
Может быть в условии цикла следует использовать не знак равенства, а "==" или "!=" ?
К сожалению нет, <= тоже не поможет, почему-то игнорируется тело цикла
#30
Отправлено 13 июня 2013 - 09:21
#31
Отправлено 13 июня 2013 - 10:05
Скажите, а зачем использовать цикл когда можно просто использовать "waitForElementPresent"?
WaitFor не работает с Ajax
#32
Отправлено 13 июня 2013 - 10:21
Так Вам надо работать с AJAX или "открыть страницу, дождаться появления элемента и продолжить тест"? В указанном примере с яндексом достаточно использовать waitForElementPresent.WaitFor не работает с Ajax
Если надо работать с Ajax то при написании тестов на выбранном языке программирования используется implicitlyWait. Для IDE есть плагин https://code.google....-implicit-wait/
#33
Отправлено 13 июня 2013 - 10:29
Так Вам надо работать с AJAX или "открыть страницу, дождаться появления элемента и продолжить тест"? В указанном примере с яндексом достаточно использовать waitForElementPresent.
WaitFor не работает с Ajax
Если надо работать с Ajax то при написании тестов на выбранном языке программирования используется implicitlyWait. Для IDE есть плагин https://code.google....-implicit-wait/
Яндекс просто для примера, вообще мне нужно работать именно с Ajax. Попробую этот плагин, спасибо. Но все равно не понятно почему цикл не работает.
#34
Отправлено 13 июня 2013 - 12:20
Разве selenium IDE по умолчанию поддерживает работу с while?Яндекс просто для примера, вообще мне нужно работать именно с Ajax. Попробую этот плагин, спасибо. Но все равно не понятно почему цикл не работает.
storeElementPresent судя по документации возвращает Вам или true если элемент найден или false, если элемента нет, таким образом условие для цикла надо изменить.
#35
Отправлено 13 июня 2013 - 14:32
Разве selenium IDE по умолчанию поддерживает работу с while?
Яндекс просто для примера, вообще мне нужно работать именно с Ajax. Попробую этот плагин, спасибо. Но все равно не понятно почему цикл не работает.
storeElementPresent судя по документации возвращает Вам или true если элемент найден или false, если элемента нет, таким образом условие для цикла надо изменить.
Нет, не поддерживает. А как изменить? В моем пониммании это должно работать так:
1) присваиваем переменной var1 ноль
2) Вход в цикл, проверка условия. Переменная равна нулю? Если да, то должно выплниться тело цикла, есил нет, то выход из него.
3) В теле цикла проверяем присуствие элемента на странице и записываем о или 1 в переменную var1.
Или я что-то не так понимаю?
#36
Отправлено 13 июня 2013 - 14:47
Исправить опять же плагином, Selenium flow control, описание можно почитать по ссылке после чего теоретически должен работать while и другие операторы.Нет, не поддерживает. А как изменить?
Функция storeElementPresent возвращает true или false в ту переменную которую вы указали(var1). Но так как у Вас условие цикла проверяет на ноль(а не на true или false), то цикл должен проходить бесконечно.3) В теле цикла проверяем присуствие элемента на странице и записываем о или 1 в переменную var1.
Или я что-то не так понимаю?
Попробуйте поставить поддержку while и записать условие вроде while var1 == false
Может быть заработает.
#37
Отправлено 13 июня 2013 - 15:17
"Как изменить?" - это я про цикл имел ввиду.
Для Selenium IDE 0 и 1 тоже самое, что и false и true, операции сравнения == он не знает, есть только присвоение
#38
Отправлено 13 июня 2013 - 19:24
Я не работал с Selenium IDE, но по ссылке что я дал в примере есть сравнение через ==:Для Selenium IDE 0 и 1 тоже самое, что и false и true, операции сравнения == он не знает, есть только присвоение
if (selenium.isElementPresent(‘link=« Следующие записи’)==true){nextStep=’OpenNextPage’} else {nextStep=’OpenPreviousPage’}
#39
Отправлено 14 июня 2013 - 06:22
#40
Отправлено 14 июня 2013 - 06:41
А можно привести пример "WaitForElementPrecsent" для WebDriver в Еклипсе? Очень интересная тема...)
Например так:
public void waitForElement(By locator, int waitTime) // locator - локатор элемента; waitTime - сколько ждать { Wait<WebDriver> wait = new WebDriverWait(driver, waitTime); wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); }В ExpectedConditions есть различные условия которые можно использовать.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных