Search code examples
seleniumsshvirtualboxsafaridriver

Running safaridriver thorugh ssh always asks password


I would like to run safari selenium test in virtual machine on virtualbox.

I have running macOS Sierra 10.12 inside virtual box. Tutorials say that you need to run

/usr/bin/safaridriver

once, to authorise it. I did that. And tests run perfectly, when I start them in terminal through GUI of virtual box. But when I ssh to that virtual box machine, I always got asked for password. It is a problem when running webdriver-manager / selenium standalone, when I cannot provide password.

Vbox: Safari 10.0, macOS Sierra 10.12


Solution

  • This is a known issue in Safari 10 with no known workaround, except to use a terminal via the window server.

    On Safari 11+, safaridriver only requires you to run safaridriver --enable, and the authentication will be cached for the rest of the login session. So, you should just add this to your script that logs into the machine.

    There is a separate issue that safaridriver does not work if you have ssh'd in and there is no window server running. There is no workaround for this at the moment–the machine needs a GUI session to run Safari and webdriver.