Skip to content

[πŸ› Bug]: Not able to launch browser through selenium grid with latest versionΒ #15234

@mmuthum

Description

@mmuthum

What happened?

Not able to launch browser through selenium grid hosted publicly and remote WebDriver can be accessed only with authentication

Getting DriverConfigurationError driving browser launch
net.thucydides.core.webdriver.DriverConfigurationError: Could not instantiate class net.thucydides.core.webdriver.ProvidedDriver

EX: http://username:password@hostname:port/wd/hub

Below are the versions used(Tried with multiple version):

	<maven.compiler.source>11</maven.compiler.source>
	<junit.version>4.13.2</junit.version>
	<serenity-core.version>4.2.16</serenity-core.version>
	<selenium.version>4.28.1</selenium.version>

Able to access with grid with authentication in older versions
<junit.version>5.9.2</junit.version>
<serenity-core.version>3.6.15</serenity-core.version>
<selenium.version>4.8.3</selenium.version>

How can we reproduce the issue?

Below are the versions used(Tried with multiple version):

		<maven.compiler.source>11</maven.compiler.source>
		<junit.version>4.13.2</junit.version>
		<serenity-core.version>4.2.16</serenity-core.version>
		<selenium.version>4.28.1</selenium.version>

Able to access with grid with authentication in older versions
		<junit.version>5.9.2</junit.version>
		<serenity-core.version>3.6.15</serenity-core.version>
		<selenium.version>

Relevant log output

net.thucydides.core.webdriver.DriverConfigurationError: Could not instantiate class net.thucydides.core.webdriver.ProvidedDriver
	at net.thucydides.core.webdriver.WebDriverFacade.newDriverInstance(WebDriverFacade.java:193)
	at net.thucydides.core.webdriver.WebDriverFacade.newProxyDriver(WebDriverFacade.java:181)
	at net.thucydides.core.webdriver.WebDriverFacade.getProxiedDriver(WebDriverFacade.java:132)
	at net.thucydides.core.webdriver.WebDriverFacade.get(WebDriverFacade.java:221)
	at com.company.Solid.Pages.HomePage.tidLoginPageLaunch(HomePage.java:102)
	at com.company.Solid.Pages.HomePage$ByteBuddy$qVx8SVhg.tidLoginPageLaunch$accessor$hGH9OnkT(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at net.thucydides.core.steps.StepInterceptor.invokeMethod(StepInterceptor.java:524)
	at net.thucydides.core.steps.StepInterceptor.executeTestStepMethod(StepInterceptor.java:504)
	at net.thucydides.core.steps.StepInterceptor.runTestStep(StepInterceptor.java:476)
	at net.thucydides.core.steps.StepInterceptor.runOrSkipMethod(StepInterceptor.java:218)
	at net.thucydides.core.steps.StepInterceptor.testStepResult(StepInterceptor.java:205)
	at net.thucydides.core.steps.StepInterceptor.intercept(StepInterceptor.java:93)
	at net.thucydides.core.steps.ProxyConfiguration$InterceptorDispatcher.intercept(ProxyConfiguration.java:51)
	at com.company.Solid.Pages.HomePage$ByteBuddy$qVx8SVhg.tidLoginPageLaunch(Unknown Source)
	at com.company.Solid.Steps.LoginSteps.user_tries_to_login_into_solid_application(LoginSteps.java:94)
	at ✽.user tries to login into solid application(file:///C:/Users/mmuthum/Desktop/GithubNew/solid-automation-suite/src/test/java/features/com/company/Solid/UI/Login.feature:58)
Caused by: net.thucydides.core.webdriver.DriverConfigurationError: After several attempts, could not instantiate new WebDriver instance of type class net.thucydides.core.webdriver.ProvidedDriver (Could not instantiate the custom webdriver provider of type mydriver). See below for more details.
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:187)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:197)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:197)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:197)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:197)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:197)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:197)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:173)
	at net.thucydides.core.webdriver.WebDriverFactory.newWebdriverInstance(WebDriverFactory.java:146)
	at net.thucydides.core.webdriver.WebDriverFacade.newDriverInstance(WebDriverFacade.java:190)
	at net.thucydides.core.webdriver.WebDriverFacade.newProxyDriver(WebDriverFacade.java:181)
	at net.thucydides.core.webdriver.WebDriverFacade.getProxiedDriver(WebDriverFacade.java:132)
	at net.thucydides.core.webdriver.WebDriverFacade.get(WebDriverFacade.java:221)
	at com.company.Solid.Pages.HomePage.tidLoginPageLaunch(HomePage.java:102)
	at com.company.Solid.Pages.HomePage$ByteBuddy$qVx8SVhg.tidLoginPageLaunch$accessor$hGH9OnkT(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at net.thucydides.core.steps.StepInterceptor.invokeMethod(StepInterceptor.java:524)
	at net.thucydides.core.steps.StepInterceptor.executeTestStepMethod(StepInterceptor.java:504)
	at net.thucydides.core.steps.StepInterceptor.runTestStep(StepInterceptor.java:476)
	at net.thucydides.core.steps.StepInterceptor.runOrSkipMethod(StepInterceptor.java:218)
	at net.thucydides.core.steps.StepInterceptor.testStepResult(StepInterceptor.java:205)
	at net.thucydides.core.steps.StepInterceptor.intercept(StepInterceptor.java:93)
	at net.thucydides.core.steps.ProxyConfiguration$InterceptorDispatcher.intercept(ProxyConfiguration.java:51)
	at com.company.Solid.Pages.HomePage$ByteBuddy$qVx8SVhg.tidLoginPageLaunch(Unknown Source)
	at com.company.Solid.Steps.LoginSteps.user_tries_to_login_into_solid_application(LoginSteps.java:94)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at io.cucumber.java.Invoker.doInvoke(Invoker.java:66)
	at io.cucumber.java.Invoker.invoke(Invoker.java:24)
	at io.cucumber.java.AbstractGlueDefinition.invokeMethod(AbstractGlueDefinition.java:47)
	at io.cucumber.java.JavaStepDefinition.execute(JavaStepDefinition.java:29)
	at io.cucumber.core.runner.CoreStepDefinition.execute(CoreStepDefinition.java:66)
	at io.cucumber.core.runner.PickleStepDefinitionMatch.runStep(PickleStepDefinitionMatch.java:62)
	at io.cucumber.core.runner.ExecutionMode$1.execute(ExecutionMode.java:10)
	at io.cucumber.core.runner.TestStep.executeStep(TestStep.java:81)
	at io.cucumber.core.runner.TestStep.run(TestStep.java:53)
	at io.cucumber.core.runner.PickleStepTestStep.run(PickleStepTestStep.java:51)
	at io.cucumber.core.runner.TestCase.run(TestCase.java:84)
	at io.cucumber.core.runner.Runner.runPickle(Runner.java:75)
	at io.cucumber.junit.PickleRunners$NoStepDescriptions.lambda$run$0(PickleRunners.java:151)
	at io.cucumber.core.runtime.CucumberExecutionContext.lambda$runTestCase$5(CucumberExecutionContext.java:136)
	at io.cucumber.core.runtime.RethrowingThrowableCollector.executeAndThrow(RethrowingThrowableCollector.java:23)
	at io.cucumber.core.runtime.CucumberExecutionContext.runTestCase(CucumberExecutionContext.java:136)
	at io.cucumber.junit.PickleRunners$NoStepDescriptions.run(PickleRunners.java:148)
	at io.cucumber.junit.FeatureRunner.runChild(FeatureRunner.java:144)
	at io.cucumber.junit.FeatureRunner.runChild(FeatureRunner.java:28)
	at io.cucumber.junit.FeatureRunner.run(FeatureRunner.java:137)
	at io.cucumber.junit.CucumberSerenityBaseRunner.runChild(CucumberSerenityBaseRunner.java:332)
	at io.cucumber.junit.CucumberSerenityBaseRunner.runChild(CucumberSerenityBaseRunner.java:53)
	at io.cucumber.junit.CucumberSerenityBaseRunner$RunCucumber.evaluate(CucumberSerenityBaseRunner.java:363)
Caused by: java.lang.RuntimeException: Could not instantiate the custom webdriver provider of type mydriver
	at net.serenitybdd.core.webdriver.driverproviders.ProvidedDriverProvider.newInstance(ProvidedDriverProvider.java:24)
	at net.thucydides.core.webdriver.WebDriverFactory.createWebDriver(WebDriverFactory.java:156)
	at net.thucydides.core.webdriver.WebDriverFactory.waitThenRetry(WebDriverFactory.java:193)
	... 47 more
Caused by: org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Unable to parse remote response: <html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx</center>
</body>
</html>
 
Host info: host: 'MMUTHUM-IN-LE04', ip: '10.40.26.160'
	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:100)
	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:75)
	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:61)
	at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:187)
	at org.openqa.selenium.remote.TracedCommandExecutor.execute(TracedCommandExecutor.java:53)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:545)
	at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:245)
	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:174)
	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:152)
	at com.helper.core.DriverInitialization.newDriver(DriverInitialization.java:45)
	at net.serenitybdd.core.webdriver.driverproviders.ProvidedDriverProvider.newInstance(ProvidedDriverProvider.java:22)
	... 49 more
Caused by: org.openqa.selenium.json.JsonException: Unable to parse: <html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx</center>
</body>
</html>

	at org.openqa.selenium.json.Json.toType(Json.java:169)
	at org.openqa.selenium.json.Json.toType(Json.java:152)
	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:96)
	... 59 more
Caused by: org.openqa.selenium.json.JsonException: Unable to determine type from: <. Last 1 characters read: <, next 128 characters to read: html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx</center
Build info: version: '4.28.1', revision: '73f5ad48a2'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '11.0.14'
Driver info: driver.version: RemoteWebDriver
	at org.openqa.selenium.json.JsonInput.peek(JsonInput.java:166)
	at org.openqa.selenium.json.JsonTypeCoercer.lambda$buildCoercer$6(JsonTypeCoercer.java:167)
	at org.openqa.selenium.json.JsonTypeCoercer.coerce(JsonTypeCoercer.java:146)
	at org.openqa.selenium.json.Json.toType(Json.java:206)
	at org.openqa.selenium.json.Json.toType(Json.java:167)
	... 61 more

Operating System

Windows 10

Selenium version

4.28.1

What are the browser(s) and version(s) where you see this issue?

Chrome 115

What are the browser driver(s) and version(s) where you see this issue?

RemoteWebDriver

Are you using Selenium Grid?

4.25.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-needs-triagingA Selenium member will evaluate this soon!I-defectSomething is not working as intended

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions