galen
galen copied to clipboard
How to use Safari Technology Preview in Selenium Grid?
Hi, I use safari configured in Selenium Grid. The newest version however has a bug that should be corrected in the Technology Preview version. So until Apple releases new Safari I wanted to use the Preview. How can I do it using the javascript Galen? What I tried so far, without success:
- Adding "safari.options": { technologyPreview: true } to the node definition in grid (config passed to node as json)
- Adding webdriver.safari.driver="/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" as Java option when running node and in json node definition passed to node
- Using createGridDriver(config.hubAddress, { browser: browserName, size: size, desiredCapabilities: { "safari.options": "{ technologyPreview: true }", useTechnologyPreview: "true", technologyPreview: "true" } } )
In all above cases always the standard Safari version was started, not Technology Preview. In C# and Java Selenium there is setUseTechnologyPreview(true) that can be called but what can I do in javascript and Galen?
@IrekW I have the same issue. I would like to see more capabilities available even running galen from the command line.
seems to be related to the grid issues here, see #494
Same problem here, any news?
Same problem here, any news?
you could setup an selenium grid and configure Safari as node
you could setup an selenium grid and configure Safari as node
@hypery2k Is It Right?
Step1: Register node by -nodeConfig node.json
java -jar selenium-server-standalone-3.6.0.jar -role node -hub http://IP:4444/grid/register -nodeConfig node.json
node.json
{
"capabilities":
[
{
"browserName": "safari",
"technologyPreview": true,
"platform": "MAC",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
}
],
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"maxSession": 5,
"port": 5555,
"register": true,
"registerCycle": 5000,
"hub": "http://localhost:4444",
"nodeStatusCheckTimeout": 5000,
"nodePolling": 5000,
"role": "node",
"unregisterIfStillDownAfter": 60000,
"downPollingLimit": 2,
"debug": false,
"servlets" : [],
"withoutServlets": [],
"custom": {}
}
At galen.config
galen.browserFactory.selenium.runInGrid = true
galen.browserFactory.selenium.grid.url = http://10.190.201.16:4444/wd/hub
galen.browserFactory.selenium.grid.browser = safari
#galen.browserFactory.selenium.grid.browserVersion =
galen.browserFactory.selenium.grid.platform = MAC
https://github.com/SeleniumHQ/selenium/issues/4537#issuecomment-343899123
My understanding is that you need to use Selenium Server >= 3.8.0 for this to work.
Unfortunately, I can't confirm. I don't have access to machine with Safari anymore. If someone can confirm it, issue can be safely closed.