I am running for a long time with selenium 2 but now that I upgraded to selenium 3 I am facing difficulties and i will appreciate any help.
On my dev machine I have : selenium 3.4.1
On the hub machine I have : selenium-server-standalone-3.4.0.jar which i am launching as follows:
java -jar selenium-server-standalone-3.4.0.jar -role hub -host 192.168.192.155 -port 4444
On the node machine i am starting each node as follows:
java -Dwebdriver.gecko.driver=c:\selenium\geckodriver.exe -jar selenium-server-standalone-3.4.0.jar -role node -hub
http://192.168.192.155:4444/grid/register -port 6558 -browser browserName=firefox,platform=WINDOWS,maxInstances=5,applicationName=qaCoreFrontEnd -maxSession 5 -host 192.168.162.79
pause
java -Dwebdriver.chrome.driver=c:\selenium\chromedriver.exe -jar selenium-server-standalone-3.4.0.jar -role node -hub
http://192.168.192.155:4444/grid/register -port 6557 -browser browserName=chrome,platform=WINDOWS,maxInstances=5,applicationName=qaCoreFrontEnd -maxSession 5 -host 192.168.162.79
geko driver v0.16.1
chrome driver 2.29
ff 53.02 and chrome 58 on windows 8.1
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: None
Stacktrace:
at java.util.HashMap.putMapEntries (HashMap.java:500)
at java.util.HashMap.putAll (HashMap.java:784)
at org.openqa.selenium.remote.DesiredCapabilities.<init> (DesiredCapabilities.java:55)
at org.openqa.grid.web.servlet.handler.RequestHandler.process (RequestHandler.java:104)
at org.openqa.grid.web.servlet.DriverServlet.process (DriverServlet.java:83)
at org.openqa.grid.web.servlet.DriverServlet.doPost (DriverServlet.java:67)
at javax.servlet.http.HttpServlet.service (HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service (HttpServlet.java:790)
at org.seleniumhq.jetty9.servlet.ServletHolder.handle (ServletHolder.java:841)
at org.seleniumhq.jetty9.servlet.ServletHandler.doHandle (ServletHandler.java:543)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextHandle (ScopedHandler.java:188)
at org.seleniumhq.jetty9.server.session.SessionHandler.doHandle (SessionHandler.java:1584)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextHandle (ScopedHandler.java:188)
at org.seleniumhq.jetty9.server.handler.ContextHandler.doHandle (ContextHandler.java:1228)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextScope (ScopedHandler.java:168)
at org.seleniumhq.jetty9.servlet.ServletHandler.doScope (ServletHandler.java:481)
at org.seleniumhq.jetty9.server.session.SessionHandler.doScope (SessionHandler.java:1553)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextScope (ScopedHandler.java:166)
at org.seleniumhq.jetty9.server.handler.ContextHandler.doScope (ContextHandler.java:1130)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.handle (ScopedHandler.java:141)
at org.seleniumhq.jetty9.server.handler.HandlerWrapper.handle (HandlerWrapper.java:132)
at org.seleniumhq.jetty9.server.Server.handle (Server.java:564)
at org.seleniumhq.jetty9.server.HttpChannel.handle (HttpChannel.java:320)
at org.seleniumhq.jetty9.server.HttpConnection.onFillable (HttpConnection.java:251)
at org.seleniumhq.jetty9.io.AbstractConnection$ReadCallback.succeeded (AbstractConnection.java:279)
at org.seleniumhq.jetty9.io.FillInterest.fillable (FillInterest.java:112)
at org.seleniumhq.jetty9.io.ChannelEndPoint$2.run (ChannelEndPoint.java:124)
at org.seleniumhq.jetty9.util.thread.Invocable.invokePreferred (Invocable.java:122)
at org.seleniumhq.jetty9.util.thread.strategy.ExecutingExecutionStrategy.invoke (ExecutingExecutionStrategy.java:58)
at org.seleniumhq.jetty9.util.thread.strategy.ExecuteProduceConsume.produceConsume (ExecuteProduceConsume.java:201)
at org.seleniumhq.jetty9.util.thread.strategy.ExecuteProduceConsume.run (ExecuteProduceConsume.java:133)
at org.seleniumhq.jetty9.util.thread.QueuedThreadPool.runJob (QueuedThreadPool.java:672)
at org.seleniumhq.jetty9.util.thread.QueuedThreadPool$2.run (QueuedThreadPool.java:590)
at java.lang.Thread.run (Thread.java:748)
i found an article that suggests to remove wd/hub from the command_executor url but then i am getting another exception:
Traceback (most recent call last):
File "C:\Users\alex.strusberg\.p2\pool\plugins\org.python.pydev_5.7.0.201704111357\pysrc\pydevd.py", line 1546, in <module>
globals = debugger.run(setup['file'], None, None, is_module)
File "C:\Users\alex.strusberg\.p2\pool\plugins\org.python.pydev_5.7.0.201704111357\pysrc\pydevd.py", line 982, in run
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Users\alex.strusberg\.p2\pool\plugins\org.python.pydev_5.7.0.201704111357\pysrc\_pydev_imps\_pydev_execfile.py", line 25, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "C:\dev\front-automation\tests\analytics\googleAnalytics\test_500.py", line 5, in <module>
'browserName': "chrome"
File "C:\Python34\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 98, in __init__
self.start_session(desired_capabilities, browser_profile)
File "C:\Python34\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 191, in start_session
self.session_id = response['sessionId']
TypeError: string indices must be integers