While executing my suite dynamically on grid using Docker-compose through Jenkins, I am getting the following exception stacktrace:
org.openqa.selenium.remote.DesiredCapabilities firefox
INFO: Using `new FirefoxOptions()` is preferred to `DesiredCapabilities.firefox()`
org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: '49d4c6ec544d', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '5.10.25-linuxkit', java.version: '1.8.0_292'
Driver info: driver.version: RemoteWebDriver
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:573)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:213)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:144)
at WebdriverBase.GridDriverManager.setDriver(GridDriverManager.java:144)
at WebdriverBase.GridDriverManager.getDriver(GridDriverManager.java:115)
at stepdefinition.PurchaseWorkflow.init(PurchaseWorkflow.java:32)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
My Hub URL : "http://selenium-hub:4444/wd/hub"
When executing the same code on local system everything is working fine on Docker container. Problem arises only when I trigger my test from Jenkins.
This is an old thread but hoping to help anyone out here, not an exact answer as I am just using the standalone browser of selenium but I have the
http://service-name:4444/wd/hub
working in my file.
await new Builder() .setChromeOptions(options) .forBrowser("chrome") .usingServer("http://selenium:4444/wd/hub/") .build();
Make sure in your docker-compose.yaml file to also use a link in the other service. for example
services: web: build: context: ./web links: - selenium ports: - "443:443"