
Selenium -JavaScript Alert
#1
Отправлено 18 марта 2011 - 14:06
chooseOkOnNextConfirmation - не помогает, т.к. это не confirmation message
Этот алерт вызывается следующей строкой - script = "alert('Agencies were updated');";
Заранее спасибо за любые советы
#2
Отправлено 18 марта 2011 - 18:46
Столкнулся со следующей проблемой. Есть веб-страничка с разными контролами. По нажатию на кнопку "Save" происходит сохранение введенных значений в текстовых полях и появляется JavaScript Alert - pop-up window с текстом 'Agencies were updated' и кнопкой "Ок" (see attached document). Загвоздка в том, что Selenium IDE не видит этого Алерта. То есть когда я воспроизвожу тест, происходит нажатие на кнопку Save, появляется этот JavaScript и тест висит, а дальше не продолжается пока не нажму вручную на кнопку "Ok" для этого Алерта. Как возможно закрыть этот JavaScript Alert?
chooseOkOnNextConfirmation - не помогает, т.к. это не confirmation message
Этот алерт вызывается следующей строкой - script = "alert('Agencies were updated');";
Заранее спасибо за любые советы
getAlert - эмулирует нажатие на кнопку ОК (окно alert'а не появляеться)
verifyAlert(pattern) - проверяет что текст соответствует паттерну и нажимает ОК
assertAlert - проверяет что текст соответствует паттерну (если нет тест фейлиться) и нажимает ОК
....
http://release.selen.../reference.html - ссылка на команды селениум (поиск по alert поможет

#3
Отправлено 18 марта 2011 - 20:02
#4
Отправлено 10 июня 2011 - 09:06
#5
Отправлено 10 июня 2011 - 11:08
#6
Отправлено 18 июля 2011 - 08:25
#8
Отправлено 18 июля 2011 - 10:29
Должен признаться, что ни разу не видел JS-окно, предлагающее сохранить файл.тоже столкнулся с такой проблемой, после прохождения по ссылке выскакивает JS окно закачки,предлгающее скачать файл не могу понять как его закрыть
Может быть имеется в виду нативное окно, диалог сохранения файла?
Да, Selenium не умеет с ними работать. И в ближайшее время не планируется.
Потому что Selenium предназначен для проверки пользовательского интерфейса веб-приложения в браузере.
Какое отношение загрузка файла имеет к пользовательскому интерфейсу веб-приложения? Никакого. Это штатная функция браузера.
А если действительно надо загрузить файл и потом его проанализировать -- Selenium может сообщить ссылку.
После чего надо взять какую-нибудь подходящую библиотеку (типа httpclient для Java или curl для php) и загрузить файл при помощи неё.
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#9
Отправлено 18 июля 2011 - 10:41
#10
Отправлено 18 июля 2011 - 10:58
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#11
Отправлено 18 июля 2011 - 13:11
А вот это неправда, Selenium прекрасно работает с такими диалогами, у нас есть для этого кроссбраузерный метод, без проблем работает через нативные функции Selenium.Может быть имеется в виду нативное окно, диалог сохранения файла?
Да, Selenium не умеет с ними работать. И в ближайшее время не планируется.
По теме - вызовите keypressNative с кодом клавиши Escape и окошко закроется. Кстати, у вас не может быть JS-окна, либо на флеше, либо нативное браузерное.
#12
Отправлено 18 июля 2011 - 13:14
#13
Отправлено 18 июля 2011 - 13:21
Виталий, это не селениум прекрасно работает, а ваше расширение :)А вот это неправда, Selenium прекрасно работает с такими диалогами, у нас есть для этого кроссбраузерный метод, без проблем работает через нативные функции Selenium.
Насколько метод кроссбраузерный? Какие браузеры поддерживаются? Какие операционки? Какие локализации?
Есть возможность поделиться с народом? Предлагаю сделать небольшую статейку, и опубликовать исходный код.
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#14
Отправлено 18 июля 2011 - 14:04
Нет там особо расширений никаких :), просто надо знать правильную последовательность вызовов нативных методов для разных ОС/браузеров. У нас поддержаны FF, IE, Safari, Opera на Win+Lin, от локализации не зависит, сложного там ничего и нет вовсе, может и правда выложу тогда.Виталий, это не селениум прекрасно работает, а ваше расширение :)
Насколько метод кроссбраузерный? Какие браузеры поддерживаются? Какие операционки? Какие локализации?
Кстати, насчёт загрузки файла с помощью сторонней библиотеки - это запросто может не прокатить. Надо будет скопировать все куки (особенно те, что httpOnly до которых можно достучаться нормально только в FF), а ещё часто сессия защищена по IP, т.е. надо как-то обратиться с того же IP где запущен браузер... в общем здесь не так всё просто.
#15
Отправлено 18 июля 2011 - 14:30
FF -- при первой загрузке файла FF выделяет радиобатон "Open With", так что надо переключать, а при последующих загрузках уже не надо переключать.
IE9 -- вообще не знаю, как с ним быть, там не нативный диалог, а wrapped-панелька в нижней части окна. Вы умеете на неё правильно кликать?
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium
#16
Отправлено 18 июля 2011 - 17:44
#17
Отправлено 19 июля 2011 - 12:59
#18
Отправлено 20 июля 2011 - 08:27
В приложении используются Google Maps API для вычисления координат. Google Maps API key указывается в настройках приложения. Если этот ключ не верный, появляется alert "This web site needs a different Google Maps key" (и пока его не закроешь, web-страница не загружается). При записи последовательности моих действий с помощью Selenium IDE в момент, когда я пытаюсь закрыть это сообщение или нажать OK, Selenium это действие игнорирует. AssertAlert/assertConfirmation/waitForPopUp не срабатывают.
Говорит ли это о том, что стандартными командами с помощью Selenium IDE я ничего не смогу сделать с этим сообщением?
#19
Отправлено 08 октября 2013 - 11:09
Д.день!
В приложении используются Google Maps API для вычисления координат. Google Maps API key указывается в настройках приложения. Если этот ключ не верный, появляется alert "This web site needs a different Google Maps key" (и пока его не закроешь, web-страница не загружается). При записи последовательности моих действий с помощью Selenium IDE в момент, когда я пытаюсь закрыть это сообщение или нажать OK, Selenium это действие игнорирует. AssertAlert/assertConfirmation/waitForPopUp не срабатывают.
Говорит ли это о том, что стандартными командами с помощью Selenium IDE я ничего не смогу сделать с этим сообщением?
Апну тему, начал изучать Selenium IDE и столкнулся с такими же окнами - assertAlert/assertConfirmation их не ловит, при записи действий тоже ничего не пишется. Есть ли решение проблемы через Selenium IDE? У меня это нативное окно, спрашивающее подтверждения ухода со страницы.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных