Hello,
In order to use Selenium Webdriver instead of Selenium RC, i try to
use it with a grid a some nodes.
I run a Selenium Grid with the below command:
java -jar selenium-server-standalone-2.5.0.jar -role hub
On a VM i run a node with:
java -jar selenium-server-standalone-2.5.0.jar -role webdriver -hub
http://gridname:4444/grid/register -port 5557 -browser
browserName=firefox -url
http://ip:5557/selenium-server/driver
On a third hand i have a test case using RemoteWebDriver, instantiated
by:
RemoteWebDriver driver = new RemoteWebDriver(new URL("
http://gridname:
4444/wd/hub"), DesiredCapabilities.firefox());
This code just throw the below Exception:
Exception in thread "main" org.openqa.selenium.WebDriverException:
Build info: version: '2.5.0', revision: '13516', time: '2011-08-23
18:29:57'
System info:
os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1',
java.version: '1.6.0_24'
Driver info: driver.version: RemoteWebDriver
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown
Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at
org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:
131)
at
org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:
105)
at
org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:
409)
at
org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:
108)
at
org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:
86)
at
org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:
94)
at
ibp.ate.satelite.selenium.RemoteWebDriverFactory.getFirefoxDriver(RemoteWebDriverFactory.java:
34)
The output server side is:
14 sept. 2011 13:58:35
org.openqa.grid.web.servlet.handler.RequestHandler handle NewSession
ATTENTION: WARNING : using a beforeSession on a proxy that can support
multiple tests is risky.
14 sept. 2011 13:58:39
org.openqa.grid.web.servlet.handler.WebDriverRequestHandler
forwardNewSessionRequest
ATTENTION: Error, header should contain Location
And node side :
15:02:46.105 WARN - POST /selenium-server/driver/session HTTP/1.1
java.lang.NullPointerException: sessionId should not be null; has this
session been started yet?
at
org.openqa.selenium.server.FrameGroupCommandQueueSet.getQueueSet(FrameGroupCommandQueueSet.java:
216)
at
org.openqa.selenium.server.SeleniumDriverResourceHandler.handleBrowserResponse(SeleniumDriverResourceHandler.java:
187)
at
org.openqa.selenium.server.SeleniumDriverResourceHandler.handle(SeleniumDriverResourceHandler.java:
151)
at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:
1530)
at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:
1482)
at org.openqa.jetty.http.HttpServer.service(HttpServer.java:
909)
at
org.openqa.jetty.http.HttpConnection.service(HttpConnection.java:820)
at
org.openqa.jetty.http.HttpConnection.handleNext(HttpConnection.java:
986)
at
org.openqa.jetty.http.HttpConnection.handle(HttpConnection.java:837)
at
org.openqa.jetty.http.SocketListener.handleConnection(SocketListener.java:
243)
at
org.openqa.jetty.util.ThreadedServer.handle(ThreadedServer.java:357)
at org.openqa.jetty.util.ThreadPool
$PoolThread.run(ThreadPool.java:534)
From various thread on this group and from the selenium googlecode
project's wiki, i thought that was the way to use RemoteWebdriver, but
obviously it's not... If someone could help please!