Разрешить размещение всплывающих окон в Pytest Селен - PullRequest
0 голосов
/ 09 января 2020

Я использую Pytest Framework для автоматизации тестирования в chrome. У меня есть ситуация, когда я должен разрешить всплывающее окно местоположения для получения списка сделок. Я не нашел способа разрешить услуги определения местоположения, но обнаружил, что, если я установил координаты stati c, то также включается определение местоположения. Для этого я использовал код, упомянутый здесь . В обычном режиме это работает. Когда я ссылаюсь sh, я вижу, что местоположение включается, но оно не работает в режиме без головы. В безголовом режиме я получаю сообщение «Пользователь запретил геолокацию». Я также попробовал другие методы, упомянутые в других сообщениях SO, которые необходимо добавить в Chrome's Options () в conftest.py файле. Но это тоже не сработало.

## conftest.py

options = Options()
options.add_argument('--headless')
options.add_experimental_option("prefs", { "profile.default_content_setting_values.geolocation": 1})
#options.add_experimental_option("prefs", { "profile.managed_default_content_settings.geolocation": 1})
## Definition

self.driver.execute_script("window.navigator.geolocation.getCurrentPosition=function(success){"+
                                        "var position = {\"coords\" : {\"latitude\": \"22.509\",\"longitude\": \"88.391\"}};"+
                                        "success(position);}") 

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...