Закрытие диалогового окна печати в Nightwatch?

Я использую Chrome в качестве браузера и не могу понять, как закрыть диалоговое окно печати, которое появляется при нажатии определенной кнопки. Я пытался использовать browser.dismissAlert(); и browser.keys([browser.Keys.ESCAPE]);, чтобы нажать кнопку выхода, и ни один из них не работает. Я не уверен, что Nightwatch знает, что диалог вообще есть.

Я искал в Интернете и не могу найти решение... у кого-нибудь есть идеи, пожалуйста?


person Lauripops    schedule 07.06.2016    source источник
comment
Используя Selenium, вам нужно переключиться на оповещение и принять его. Этот ответ, хотя и не специально для вашего вопроса, содержит пример того, как переключиться и принять предупреждение.   -  person That1Guy    schedule 07.06.2016
comment
Пробовал, не помогло, к сожалению! Я видел похожие вопросы, когда у людей не было этой проблемы в других браузерах, поэтому у меня такое ощущение, что Chrome не позволяет тесту взаимодействовать с ним.   -  person Lauripops    schedule 07.06.2016
comment
Если .acceptAlert() работал, но .dismissAlert() , вы можете опубликовать эту проблему на github, возможно, это ошибка.   -  person Bao Tran    schedule 09.06.2016


Ответы (1)


Итак, как оказалось, Selenium не может обрабатывать диалоги Chrome. Однако я нашел решение, прочитав эту страницу и добавив --disable-print-preview в chromeOptions в файле nightwatch.json в моем проекте.

Это закрывает диалоговое окно печати Chrome, но по-прежнему вызывает системное диалоговое окно Mac, и я не думаю, что возможности Selenium распространяются на системные диалоговые окна, поэтому в целях тестирования я просто отключил функцию печати.

Позор, я не нашел лучшего решения, но просто хотел обновить для тех из вас, кто проголосовал

person Lauripops    schedule 08.06.2016