seleniumrc_fu initial test issue

I have the seleniumrc_fu plugin installed and setup according to the instructions, and can run the selenium:test task if there are no test cases. My first test case simply does an open_home_page to verify that things are working at all. Unfortuniately there seems to be an issue with even this simple a test case. The following suggests that there is an issue with the getNewBrowserSession command. The browser name appears to be prefixed with a special character. Is this normal? I am not sure how to proceed in diagnosing this as it appears to be on the selenium server side of the house.

I also note that when the test fails it does not shutdown the selenium server. At least it finds an existing server on rerunning the test.


MBP:/volumes/data/projects/esco lattam$ rake selenium:test (in /Volumes/Data/Projects/esco) Wed Jun 13 11:25:31 -0700 2007 - checking localhost Wed Jun 13 11:25:31 -0700 2007 - Checking for server on localhost:4444 Wed Jun 13 11:25:31 -0700 2007 - done checking Wed Jun 13 11:25:31 -0700 2007 - rake selenium:test_with_server_started --trace browsers=firefox selenium_server_host=localhost app_server_host=localhost (in /Volumes/Data/Projects/esco) ** Invoke selenium:test_with_server_started (first_time) ** Execute selenium:test_with_server_started Loaded suite /users/lattam/src/bin/rake Running *firefox... Started Requesting --->/selenium-server/driver/?cmd=getNewBrowserSession&1= %2Afirefox&2=http%3A%2F%2Flocalhost%3A4000 RESULT:

E Finished in 0.160018 seconds.

  1) Error: test_home(SimpleTest): SeleniumCommandError:     /Volumes/Data/Projects/esco/config/../vendor/plugins/seleniumrc_fu/ lib/selenium/version_0_8_1/selenium.rb:156:in `do_command'     /users/lattam/src/lib/ruby/1.8/timeout.rb:56:in `timeout'     /users/lattam/src/lib/ruby/1.8/timeout.rb:76:in `timeout'

By running the server in a separate window I got this from its output which is getting helpful. It would be good if the documentation for seleniumrc_fu had setup instructions that covered getting the browsers defined and setup for Mac and PC platforms and for remote hosts to do cross-platform testing.


WARNING: GET /selenium-server/driver/?cmd=getNewBrowserSession&1= %2Afirefox&2=http%3A%2F%2Flocalhost%3A4000 HTTP/1.1 java.lang.RuntimeException: java.lang.reflect.InvocationTargetException         at org.openqa.selenium.server.browserlaunchers.BrowserLauncherFactory.createBrowserLauncher( 130)         at org.openqa.selenium.server.browserlaunchers.BrowserLauncherFactory.getBrowserLauncher( 80)         at org.openqa.selenium.server.SeleniumDriverResourceHandler.getNewBrowserSession( 266)         at org.openqa.selenium.server.SeleniumDriverResourceHandler.doCommand( 179)         at org.openqa.selenium.server.SeleniumDriverResourceHandler.handleCommandRequest( 165)         at org.openqa.selenium.server.SeleniumDriverResourceHandler.handle( 108)         at org.mortbay.http.HttpContext.handle(         at org.mortbay.http.HttpContext.handle(         at org.mortbay.http.HttpServer.service(         at org.mortbay.http.HttpConnection.service( 816)         at org.mortbay.http.HttpConnection.handleNext(         at org.mortbay.http.HttpConnection.handle( 833)         at org.mortbay.http.SocketListener.handleConnection( 244)         at org.mortbay.util.ThreadedServer.handle( 357)         at org.mortbay.util.ThreadPool$ 534) Caused by: java.lang.reflect.InvocationTargetException         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)         at sun.reflect.NativeConstructorAccessorImpl.newInstance( 39)         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( 27)         at java.lang.reflect.Constructor.newInstance( 494)         at org.openqa.selenium.server.browserlaunchers.BrowserLauncherFactory.createBrowserLauncher( 117)         ... 14 more Caused by: java.lang.RuntimeException: Firefox couldn't be found in the path! Please add the directory containing 'firefox-bin' to your PATH environment variable, or explicitly specify a path to Firefox like this: *firefox /blah/blah/firefox-bin