Skip to content

Capabilities

This page lists various capabilities used and implemented by the Safari driver. To learn more about capabilities, refer to the Appium documentation.

For other capabilities recognized by the Appium server, see their Appium docs reference page.

Standard

Refer to the W3C WebDriver documentation for more information about these capabilities.

platformName

Name Type Default
platformName string Not specified

This capability must be set to mac or ios (case-insensitive)

browserName

Name Type Default
browserName string Safari

This capability is always automatically set to Safari, so it has no effect.

browserVersion

Name Type Default
browserVersion string Not specified

Only allow sessions on devices that have this version of Safari. Numbers are prefix-matched - for example, a value of '12' will allow hosts with a Safari version of '12.0.1' or '12.1'.

acceptInsecureCerts

Name Type Default
acceptInsecureCerts boolean false

This capability requires Safari 15.4 or later (originally added in Safari Technology Preview 135).

General

automationName

Name Type Default
appium:automationName string Not specified

Specifies the Appium driver to use. Must be set to Safari (case-insensitive)

Safari

platformVersion

Name Type Default
safari:platformVersion string Not specified

Only allow sessions on devices that have this OS version. Numbers are prefix-matched - for example, a value of '12' will allow hosts with an OS version of '12.0.1' or '12.1'.

platformBuildVersion

Name Type Default
safari:platformBuildVersion string Not specified

Only allow sessions on devices that have this OS build version, for example '18E193'. On macOS, the OS build version can be determined by running the sw_vers(1) utility.

useSimulator

Name Type Default
safari:useSimulator boolean false

Whether to run tests on an iOS/iPadOS simulator device. Note that simulators require Xcode to be installed.

deviceType

Name Type Default
safari:deviceType string Not specified

Only allow sessions on devices that match this device type. Supported values are iPhone and iPad (case-insensitive).

deviceName

Name Type Default
safari:deviceName string Not specified

Only allow sessions on devices with this device name (case-insensitive)

deviceUDID

Name Type Default
safari:deviceUDID string Not specified

Only allow sessions on devices with this device UDID (case-insensitive)

automaticInspection

Name Type Default
safari:automaticInspection boolean false

Whether to preload the Web Inspector and JavaScript debugger in the background. If set to true, when evaluating a debugger; statement in the test page, test execution will be paused, and the Web Inspector's Debugger tab will open.

automaticProfiling

Name Type Default
safari:automaticProfiling boolean false

Whether to preload the Web Inspector and start a timeline recording in the background. If set to true, the Timelines tab in Web Inspector will show the captured timeline recording in its entirety.

diagnose

Name Type Default
safari:diagnose boolean true

Whether to enable safaridriver diagnostics for this session. Diagnostic files are saved to ~/Library/Logs/com.apple.WebDriver.

The Safari driver enables diagnostics for all sessions, so this capability has no effect.

WebKit

webRTC

Name Type Default
webkit:WebRTC Record<string, boolean> Not specified

Change Safari's policies for WebRTC and Media Capture. This capability is a dictionary with the following optional sub-keys:

  • DisableInsecureMediaCapture - whether to prevent media capture over insecure connections, which is allowed by default in WebDriver sessions
  • DisableICECandidateFiltering - whether to skip filtering of WebRTC ICE candidates, which by default filters out candidates that correspond to internal network addresses

alwaysAllowAutoplay

Name Type Default
webkit:alwaysAllowAutoplay boolean false

Whether to always allow autoplay of all media elements without user interaction, overriding any per-website settings.

This capability requires Safari 18.6 or later (originally added in Safari Technology Preview 222).

siteIsolationEnabled

Name Type Default
webkit:siteIsolationEnabled boolean false

Whether to enable site isolation.

This capability requires Safari 26.0 or later (originally added in Safari Technology Preview 225).