有没有办法绕过 Protractor 测试中的 Chrome 地理定位对话框?
Is there a way to bypass Chrome geolocation dialog in Protractor tests?
我在使用量角器自动化应用程序时遇到了这个问题。
打开主页后,我会看到带有 Block/Allow 按钮的地理定位对话框,如果不选择任何一个选项,它不会继续进行
事实证明,此对话框不是警报实例,这就是 browser.switchTo().alert().confirm()
不起作用的原因
将 '--disable-notifications'
参数传递给 Chrome 也没有解决问题
在线研究没有给出任何积极的结果。如何解决?
问题的解决方案是将 "prefs": {'profile.default_content_setting_values.geolocation': 2}
传递给 capabilities
对象 protractor.config.js
下面是另一个选项,功能几乎相同。
因此 chrome 可以使用一个参数 --user-data-dir=/tmp/chrome
来指定打开 chrome 的配置文件。如果指定目录中不存在配置文件,则会创建默认目录。
然后,如果你打开 /tmp/chrome/Default/Preferences,你会看到一个带有偏好的对象。您需要将 default_content_setting_values.geolocation
设置为 2
(不是 1 或 0)以使其不提示该对话框
我在使用量角器自动化应用程序时遇到了这个问题。
打开主页后,我会看到带有 Block/Allow 按钮的地理定位对话框,如果不选择任何一个选项,它不会继续进行
事实证明,此对话框不是警报实例,这就是 browser.switchTo().alert().confirm()
不起作用的原因
将 '--disable-notifications'
参数传递给 Chrome 也没有解决问题
在线研究没有给出任何积极的结果。如何解决?
问题的解决方案是将 "prefs": {'profile.default_content_setting_values.geolocation': 2}
传递给 capabilities
对象 protractor.config.js
下面是另一个选项,功能几乎相同。
因此 chrome 可以使用一个参数 --user-data-dir=/tmp/chrome
来指定打开 chrome 的配置文件。如果指定目录中不存在配置文件,则会创建默认目录。
然后,如果你打开 /tmp/chrome/Default/Preferences,你会看到一个带有偏好的对象。您需要将 default_content_setting_values.geolocation
设置为 2
(不是 1 或 0)以使其不提示该对话框