Safari 特定功能
这些是 Apple Safari 浏览器特有的功能和特性。
与 Chromium 和 Firefox 驱动程序不同,safaridriver 是随操作系统一起安装的。 要在 Safari 上启用自动化,请从终端运行以下命令
safaridriver --enable
选项
所有浏览器通用的功能在选项页面上描述。
Safari 独有的功能可以在 Apple 的页面关于 Safari 的 WebDriver 中找到
使用基本定义的选项启动 Safari 会话如下所示
SafariOptions options = new SafariOptions();
driver = new SafariDriver(options);
options = webdriver.SafariOptions()
driver = webdriver.Safari(options=options)
var options = new SafariOptions();
driver = new SafariDriver(options);
options = Selenium::WebDriver::Options.safari
@driver = Selenium::WebDriver.for :safari, options: options
let driver = new Builder()
.forBrowser(Browser.SAFARI)
.setSafariOptions(options)
.build();
val options = SafariOptions()
val driver = SafariDriver(options)
移动端
那些希望在 iOS 上自动化 Safari 的人应该查看Appium 项目。
服务
所有浏览器通用的服务设置在服务页面上描述。
日志记录
与其他浏览器不同,Safari 不允许您选择日志输出的位置或更改级别。唯一可用的选项是关闭或打开日志。如果日志被切换为打开状态,它们可以在以下位置找到:~/Library/Logs/com.apple.WebDriver/
。
.withLogging(true)
注意:Java 还允许通过系统属性设置控制台输出;
属性键:SafariDriverService.SAFARI_DRIVER_LOGGING
属性值:"true"
或 "false"
service = webdriver.SafariService(service_args=["--diagnose"])
Safari 技术预览版
Apple 提供了其浏览器的开发版本——Safari 技术预览版
options.setUseTechnologyPreview(true);
driver = new SafariDriver(options);
options = webdriver.SafariOptions()
options.use_technology_preview = True
service = webdriver.SafariService(
executable_path='/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver'
)
driver = webdriver.Safari(options=options, service=service)
Selenium::WebDriver::Safari.technology_preview!
local_driver = Selenium::WebDriver.for :safari