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

Публикации rbolsh

3 публикаций создано rbolsh (учитываются публикации только с 17 мая 2023)


#79281 Selenium ошибка при вызове метода wait_for_page_to_load

Отправлено автор: rbolsh 27 октября 2010 - 10:56 в Selenium - Functional Testing

Описание действий на видео
  • На родительском окне кликаю по ссылке на дочернее окно.
  • Дочернее окно открывается в новом окне.
  • После открытия я выбираю новое окно и устанавливаю фокус на нём.
  • В новом окне я нажимаю на кнопку Отмена.
  • После нажатия на кнопку форма закрывается и родительское окно обновляется.
  • Выбираю родительское окно и устанавливаю фокус на нём.
  • Кликаю по ссылке **Получить новых**.
  • Тест падает на методе wait_for_page_to_load()...

Итоги
После нажатия на ссылку **Получить новых** в этом же окне открывается форма получения новых сотрудников. Если я не проверяю дочернее окно, а сразу кликаю на ссылку **Получить новых** - всё корректно отрабатывает. Для обхода этой ошибки пришлось разбить тест на несколько частей. Один тест проверяет дочернее окно, а другой ссылку **Получить новых**.
В прошлой версии приложения, после нажатия на кнопку **Отмена**(см. п. 5), родительское окно не обновлялось и тест работал без сбоев.
Похоже, что Selenium после обновления родительского окна не может выполнять метод wait_for_page_to_load(), так как считает окно закрытым. Но при этом он может находить на этом окне ссылки и кликать по ним.



#79228 Selenium ошибка при вызове метода wait_for_page_to_load

Отправлено автор: rbolsh 25 октября 2010 - 15:00 в Selenium - Functional Testing

__Шаги__
  • Открываю страницу Список сотрудников.
  • Открываю карточку одного из сотрудников, карточка открывается в новой вкладке. Использую метод self.selenium.wait_for_pop_up("", timeOut) для ожидания загрузки этого окна.
  • Нажимаю кнопку Отмена. При этом карточка закрывается и фокус вновь переводится на форму Список сотрудников. Форма Список сотрудников при этом обновляется (мне кажется проблема возникает из-за обновления формы).
  • Далее я устанавливаю активным окном форму Список сотрудников и кликаю на кнопку Получить новых.
  • После этого стоит метод self.selenium.wait_for_page_to_load(timeOut). И на его выполнении тест падает с ошибкой.

См. действия на флеш-видео в файле - ссылка на файлообменник

PS: похоже на ошибку в самом Selenium.



#79147 Selenium ошибка при вызове метода wait_for_page_to_load

Отправлено автор: rbolsh 22 октября 2010 - 15:50 в Selenium - Functional Testing

При вызове метода wait_for_page_to_load тест падает с сообщением об ошибке: Exception: Current window or frame is closed!
Если кто сталкивался, подскажите как победить проблему?

Исходные данные
В тесте была проверка, с использованием метода wait_for_pop_up().

Шаги
2. Вызвать метод wait_for_page_to_load().
3. Убедиться, что тест рушится с ошибкой:
File "C:\Users\rbolsh\Работа\E-doc\autotests\E-doc\main.py", line 124, in search
self.selenium.wait_for_page_to_load(timeOut)
File "C:\Python26\lib\selenium.py", line 1730, in wait_for_page_to_load
self.do_command("waitForPageToLoad", [timeout,])
File "C:\Python26\lib\selenium.py", line 215, in do_command
raise Exception, data
Exception: Current window or frame is closed!

Тест выполняется если
1. Вместо метода wait_for_page_to_load() поставить паузу, или вообще его убрать.
2. Убрать проверку, с использованием метода wait_for_pop_up()

PS: До выхода этой версии приложения тесты отрабатывали корректно. Визуально в приложении все работает правильно.
Странно, что падает именно на вызове метода wait_for_page_to_load(), а с паузой вместо него работает.