Я использую 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](https://i.stack.imgur.com/4OPrl.png)