如何使用Selenium Webdriver在SAFARI中以编程方式处理“地理位置”弹出窗口?

问题描述

在使用SAFARI(不是Chrome)的Selenium脚本中,我需要允许或拒绝地理位置弹出窗口。

我已经查看了有关Chromedriver的所有其他问题和答案-Safaridriver需要它。

还要在我的Safari本地实例上手动设置首选项 是不够的-我需要在代码中以编程方式进行设置,以便可以在SauceLabs上运行

我尝试过: driver.switchTo().alert().dismiss();driver.switchTo().alert().accept(); 两者都抛出NoAlertPresentException

Safaridriver是否具有我可以在运行测试之前设置响应的选项,例如Chromedriver具有Chromeoptions或Firefox具有Firefoxprofile?如果是这样,请有人指出该文档或提供示例吗?

尝试的解决方案:

  • webdriver警报类(如上所述)
  • SafariOptions-很少的实际选项。看起来苹果公司专门为仅在即将到来的Safari版本上进行测试而创建。
  • 所需功能-设置setCapability("locationContextEnabled",true)

这两种解决方案都无法阻止位置弹出。实际上,第三个解决方案只是使测试变得不稳定。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)