diff --git a/java/src/org/openqa/selenium/grid/node/config/DriverServiceSessionFactory.java b/java/src/org/openqa/selenium/grid/node/config/DriverServiceSessionFactory.java index 58044d4752770..6f39fbc3995cc 100644 --- a/java/src/org/openqa/selenium/grid/node/config/DriverServiceSessionFactory.java +++ b/java/src/org/openqa/selenium/grid/node/config/DriverServiceSessionFactory.java @@ -131,10 +131,12 @@ public Either apply(CreateSessionRequest sess attributeMap.put(AttributeKey.LOGGER_CLASS.getKey(), this.getClass().getName()); DriverService service = builder.build(); - Result driverResult = DriverFinder.getPath(service, capabilities); - service.setExecutable(driverResult.getDriverPath()); - if (driverResult.getBrowserPath() != null && !driverResult.getBrowserPath().isEmpty()) { - capabilities = setBrowserBinary(capabilities, driverResult.getBrowserPath()); + if (service.getExecutable() == null) { + Result driverResult = DriverFinder.getPath(service, capabilities); + service.setExecutable(driverResult.getDriverPath()); + if (driverResult.getBrowserPath() != null && !driverResult.getBrowserPath().isEmpty()) { + capabilities = setBrowserBinary(capabilities, driverResult.getBrowserPath()); + } } Optional platformName = Optional.ofNullable(capabilities.getPlatformName());