kadamovich
(Kseniya Adamovich)
January 16, 2014, 8:52am
#1
Можно ли анализировать status bar в ie используя Selenium WebDriver?
vmaximv
(vmaximv)
January 16, 2014, 9:46am
#2
Поясните что именно там надо анализировать и зачем.
polusok
(Mykhailo Poliarush)
January 16, 2014, 10:22am
#3
@kadamovich Как-то задача не совсем ясна, телепатов среди нас тоже мало. Пожалуйста опишите поподробнее.
kadamovich
(Kseniya Adamovich)
January 17, 2014, 7:02am
#4
нужно проанализировать, что страница полностью загрузилась и в status bar в левом углу отображалась надпись “Done”. Можно ли это сделать?
vmaximv
(vmaximv)
January 17, 2014, 7:14am
#5
Вам нужен не статус бар, а document.readyState.
Хотя опять таки - не понятно зачем это нужно - драйвер ИЕ сам ждет этого статуса.
1 Like
polusok
(Mykhailo Poliarush)
January 17, 2014, 8:57am
#6
Вы походу занимаетесь не тем, это нужно проверять через javascript как сказал @vmaximv
А вы сами решили сделать такую проверку или вам ее поручили сделать?
kadamovich
(Kseniya Adamovich)
January 20, 2014, 7:22am
#7
Спасибо за совет.
Была поставлена задача определить, что страница загрузилась полностью и без ошибок. Сказали, что как варинт, можно анализировать status bar
vmaximv
(vmaximv)
January 20, 2014, 8:02am
#8
На прямую доступа к статус бару нет.
Ждать “Done” в readyState - тоже скользкая дорожка:
Во первых, как я уже говорил, ИЕ драйвер сам ждет его
Во вторых - статус Done не гарантирует, что через пол секунды не выстрелит какой-нибудь AJAX и опять пойдет загрузка
По js exception тоже все не оч хорошо - нужно инджектить js скрипт и делать это до “попадания” контента в браузер, т.е. использовать прокси. Самый просто вариант - включить отображение ошибок и по фейлу скринить десктоп.
polusok
(Mykhailo Poliarush)
January 20, 2014, 8:39am
#9
А также хочу прикрепить смежные темы для прочтения:
Подскажите как можно задержать раьботу ситемы до полной загрузки страницы. Проблема в том что при входе система требует залогинится. После логина она сразу выдает информацию(страница заново не загружается) но далеко не все элементы успевают загрузится и возникают ошибки. Подскажите, пожалуйста, как заставить систему подождать несколько секунд и лиш потом проверять делать работу дальше. Пробовала selenium.wait(3000); - ошибка java.lang.IllegalMonitorStateException selenium.waitForPageToLoad("3000"); - не работает ( поскольку фактически страница уже считается загруженой)
Комьюнити, есть вопрос В простейшем месте рандомно падает тест. Дело в том, что при загрузке страницы все js грузятся в самом конце, и из-за этого иногда не отрабатывает клик по элементу, вызывающий попап. Верстальщики посоветовали покурить в сторону DOM is ready. Но ничего подобного не нагуглил. Как вариант можно просто втулить паузу перед кликом на пару секунд. Но, может, есть более парвильные варианты?
Всем привет. Стоит задача, замерить время загрузки страницы, чтоб сравнить с прошлыми версиями приложения. Для IE данная задача решилась при помощи httpWatch для него существует плагин который интегрируется в VisualStudio, что позволяет данную задачу автоматизировать. Вопрос. Подскажите, как это можно сделать для Chrome. Httpwatch не поддерживает Chrome. Естественно хочется не просто замерять время, но и сделать автоматизацию данного процесса. Спасибо.
Всем привет:) Подскажите, есть ли в WebDriver какой нибудь метод или аннотация, которая позволит выполнять действия на странице не дождиаясь ее полной загрузки? Дело в том, что в моем проекте, очень много партнерских скриптов и когда начинает грузитсья страница, она не будет полностью прогруженна, пока не отработают все скрипты на партнерской стороне. Таким образом, DOM уже загружен, а скрипты еще не все отработали. Есть ли какой, то способ загрузить страницу(выделить на это время секунды 4-е) и начать выполнение действий на ней?
Привет! Может кто сталкивался и могет подсказать? Чем можно добиться такого результата: 1. dirver.get() 2. как только подгрузился WebElement -> next action Тобишь не ждать когда подгрузиться вся страница. Что попробовал: Убирал driver.manage().timeouts().implicitlyWait(Long.parseLong("5"), TimeUnit.SECONDS); и пробовал использовть
wait.until(ExpectedConditions.elementToBeClickable(By.xpath(".."))).click(); -> элемент явно подгружен, но click() не происходит, страница продолжает загружаться...