I have followed the instructions for Safari 10 automation on Sierra. I am using a Java client and am unable to launch Safari with RemoteWebDriver(capabilities) and with SafariDriver instantiation, like
DesiredCapabilities capabilities = DesiredCapabilities.safari();
capabilities.setCapability(SafariOptions.CAPABILITY, new SafariOptions());
driver = new SafariDriver(capabilities);
I get this during visibility check of a WebElement -
org.openqa.selenium.UnsupportedCommandException: Build info: version: '3.0.0-beta4', revision: '3169782', time: '2016-09-29 10:30:04 -0700'
System info: host: 'Jai-Padmanabhans-MacBook-Pro.local', ip: '192.168.52.125', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.12', java.version: '1.8.0_60'
Driver info: org.openqa.selenium.safari.SafariDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, databaseEnabled=true, handlesAlerts=true, version=12602.1.50, cleanSession=true, platform=MAC, nativeEvents=true, locationContextEnabled=false, webStorageEnabled=true, browserName=safari, javascriptEnabled=true, cssSelectorsEnabled=true}]
I know SafariDriver should not be used as mentioned in the article but there seems to be a 3.0.0-beta4 jar for safaridriver and it does launch Safari. Can you point me in the right direction?
I got it working by setting the path in .bash_profile and updating my selenium to the latest jar.I followed this and I got it to work.
desiredCapabilities = DesiredCapabilities.safari();
SafariOptions safariOptions = new SafariOptions();
safariOptions.setUseCleanSession(true);
safariOptions.setUseTechnologyPreview(true);
desiredCapabilities.setCapability(SafariOptions.CAPABILITY, safariOptions);
public class Test {
public static void main(String[] args) {
DesiredCapabilities desiredCapabilities = DesiredCapabilities.safari();
SafariOptions safariOptions = new SafariOptions();
safariOptions.setUseCleanSession(true);
desiredCapabilities.setCapability(SafariOptions.CAPABILITY, safariOptions);
desiredCapabilities.setCapability(SafariOptions.CAPABILITY, new SafariOptions());
WebDriver driver = new SafariDriver(desiredCapabilities);
driver.get("http://etnabeta.cimm2.com");
driver.quit();
}