UnexpectedAlertBehavior в FirefoxDriver или как FirefoxDriver обрабатывает модальные окна (Selenium WebDriver, C#)

UnexpectedAlertBehavior в FirefoxDriver или как FirefoxDriver обрабатывает модальные окна
При написании тестов с использованием Selenium WebDriver + C# + Nunit прописываю в коде методы обработки модальных окон, которые появляются на страницах тестируемого сервиса. ChromeDriver отрабатывает тесты замечательно. Меняю настройки тестов на использование FirefoxDriver и при прохождении тестов сразу получаю ошибку. В ошибке говорится, что не находим всплывающих окон. Как так? Запускаю тесты и внимательно наблюдаю за процессом. Модальные окна появляются и быстро исчезают. Почему?

Начал изучать вопрос и выяснил, что Webdriver для Firefox по умолчанию обрабатывает и закрывает все модальные окна (отменяет их). Как итог в коде дело до модальных окон не доходит. Мне необходимо в некоторых тестах подтверждать, а не отменять окна, также удобнее во многих тестах управлять самому модальными окнами, чтобы контролировать происходящее.

В итоге было найдено решение, которым делюсь с вами. Если используете FirefoxDriver, то вам необходимо чётко указать, что делать с модальными окнами.

Подключаем:

Объявляем в [TestFixture ()]:

В [TestFixtureSetUp] пишем:

ignore — игнорировать окна (так как сами будем решать, что с ними делать, прописывая поведение в коде).
accept — автоматически принимать окна (нажатие на ОК).
dismiss — автоматически отклонять окна (нажатие на ОТМЕНА), это использует FirefoxDriver по умолчанию.

Используя «accept» или «dismiss» вы не сможете самостоятельно обрабатывать модальные окна.

  • Понравилось? Добавьте в избранное или поделитесь с друзьями:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *