配置Selenium以在Private模式下驱动Safari



如何配置Selenium以私有模式驱动Safari ?(我使用Ruby接口)。

就上下文而言,以下是为什么在Safari的私有模式下运行测试很重要的原因:在Safari的私有模式下,试图写入本地存储将引发错误。因此,我需要自动化测试来验证我的代码在Private模式下是否避免写入本地存储。(而且,也许更重要的是,它会将将来的错误告知开发人员

让我们来看看隐私浏览的定义:https://support.apple.com/kb/PH19216?locale=en_US

当你使用隐私浏览窗口时,Safari不会保存你的浏览历史记录,并且它会要求你访问的网站不要跟踪你。

这里:http://en.wikipedia.org/wiki/Privacy_mode

隐私模式或"隐私浏览"或"隐身模式"[1]是某些web浏览器的隐私功能,用于禁用浏览历史记录和web缓存。这允许人们浏览Web,而无需存储可以在以后检索的本地数据。隐私模式也会禁用cookies和Flash cookies中的数据存储。此隐私保护仅适用于本地计算设备,因为仍然可以通过关联web服务器的IP地址来识别经常访问的网站。

所以这意味着Selenium相当于打开了隐私浏览。每次您通过Selenium启动任何驱动程序时,它都会创建一个全新的匿名配置文件,实际上您是在私下浏览。(如果您不使用已创建的safari配置文件)

但是!如果你仍然认为你需要在隐身模式下运行safari,你可以使用以下方法:

你可以用AppleScript自动启用隐私浏览选项。一样。

  1. 首先,启动通用访问系统首选项并启用启用辅助设备访问选项。

  2. 启动脚本编辑器(在应用程序文件夹中的AppleScript文件夹中),并输入以下脚本:

tell application "Safari"
  activate
end tell
tell application "System Events"
  tell process "Safari"
      tell menu bar 1
          tell menu bar item "Safari"
              tell menu "Safari"
                  click menu item "Private Browsing"
              end tell
          end tell
      end tell
  end tell
end tell

来自这里的信息:http://www.macworld.com/article/1139714/enableprivatebrowsing.html

最新更新