Forum: RSpec Can't use Cucumber with Webrat and Selenium

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
4dae34b861f21fa83de44d6e139f3ec6?d=identicon&s=25 Enrico Listemann (enno)
on 2009-04-05 16:23
Hi,

I followed the instructions at
http://wiki.github.com/aslakhellesoy/cucumber/sett... to get
Selenium and Webrat to work with Cucumber. I have no problems using
Webrat but when I switch to use Selenium, I get the following error
message when I try to access the browser(e.g. calling visit(login_path))
in a step definition.

Die angeforderte Adresse ist in diesem Kontext ungültig. - connect(2)
(Errno::EADDRNOTAVAIL)
E:/SOFTWAREENTWICKLUNG/ruby/lib/ruby/1.8/timeout.rb:56:in `timeout'
(eval):2:in `visit'

(for those who don't speak german: The requested address is invalid in
this context.)

I also tried to use Cucumber and Selenium without Webrat and it works
without any problems.

I'm using Rails 2.3.0, Cucumber 0.2.3, Webrat 0.4.3 and RSpec 1.2.2 on a
WinXP machine.

I would be very pleased if anyone had an idea about the reason for this
failure.

Enrico
44a43e7fef8e933e802a7802b4bd3525?d=identicon&s=25 John Small (johnsmall)
on 2009-05-13 15:01
(Received via mailing list)
Well I can't help you but I do have a similar problem. In my case
Cucumber-Selenium works, Cucumber-Webrat works but Cucmber-Webrat-
Selenium doesn't work because Webrat issues requests to www.example.com
and Selenium starts up a mongrel on localhost:3001, connects to it via
Firefox and then throws up when it gets a request to go to
www.example.com.
I need to find a way to change the host name that Webrat uses when it
connects via Selenium.
967d930ab75530db43b763108d10161f?d=identicon&s=25 Auto Bot (autobot)
on 2009-06-19 03:51
John Small wrote:
> Well I can't help you but I do have a similar problem. In my case
> Cucumber-Selenium works, Cucumber-Webrat works but Cucmber-Webrat-
> Selenium doesn't work because Webrat issues requests to www.example.com
> and Selenium starts up a mongrel on localhost:3001, connects to it via
> Firefox and then throws up when it gets a request to go to
> www.example.com.
> I need to find a way to change the host name that Webrat uses when it
> connects via Selenium.

In env.rb

Webrat.configure do |config|
  config.mode = :selenium
  config.application_environment = :test

# Tell where the application is running on for selenium to test
  config.application_address = "#{app_server_host}"
  config.application_port = "#{app_port}"

# Tell where selenium server is running on, when not specified defaults
to nil (server starts in webrat process and runs locally)
  config.selenium_server_address = "#{selenium_server_host}"
  config.selenium_server_port = "4444"

# Set the key that Selenium uses to determine the browser running
  config.selenium_browser_key = '#{browser}'

end
874be46e8593deadb2cec84b70b26725?d=identicon&s=25 Yi Wen (hayafirst)
on 2009-06-19 16:27
(Received via mailing list)
Hello,

I has spork 0.5.0 and worked fine. now I updated to spork 0.5.7 which
seems to break the existing setting. The stack trace looks like this:

Using RSpec
Preloading Rails environment
Loading Spork.prefork block...
uninitialized constant MissingSourceFile (NameError)
/my_proj/vendor/gems/rspec-rails-1.2.6/lib/spec/rails.rb:5
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in
`gem_original_require'
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in
`require'
/my_porj/spec/spec_helper.rb:8
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork.rb:11:in `prefork'
/my_porj/spec/spec_helper.rb:4
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/server.rb:166:in `load'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/server.rb:166:in `preload'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/app_framework/rails.rb:121:in `preload'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/server.rb:162:in `preload'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork.rb:41:in `exec_prefork'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/server.rb:148:in `preload'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/runner.rb:95:in `run'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/
spork/runner.rb:10:in `run'
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/spork:11
/usr/local/bin/spork:19:in `load'
/usr/local/bin/spork:19


It's missing application_controller. THe environment.rb is loaded
before require 'spec/rails'. Any idea?

Thanks

Yi
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2009-06-19 16:42
(Received via mailing list)
On Fri, Jun 19, 2009 at 9:24 AM, Yi Wen<hayafirst@gmail.com> wrote:
> /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in
> 
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/spork/app_framework/rails.rb:121:in
> `run'
> /usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/spork:11
> /usr/local/bin/spork:19:in `load'
> /usr/local/bin/spork:19
>
>
> It's missing application_controller. THe environment.rb is loaded before
> require 'spec/rails'. Any idea?

It's probably because of this:
https://rspec.lighthouseapp.com/projects/5645/tickets/839

If so, just remove the conditional from the line that requires
environment.rb
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2009-06-19 16:49
(Received via mailing list)
On Fri, Jun 19, 2009 at 9:33 AM, David Chelimsky<dchelimsky@gmail.com>
wrote:
>> /my_proj/vendor/gems/rspec-rails-1.2.6/lib/spec/rails.rb:5
>> `preload'
>> 
/usr/local/lib/ruby/gems/1.8/gems/timcharper-spork-0.5.7/bin/../lib/spork/runner.rb:10:in
> https://rspec.lighthouseapp.com/projects/5645/tickets/839
>
> If so, just remove the conditional from the line that requires environment.rb

If that's not it, you may want to try the spork google group:

http://groups.google.com/group/sporkgem
874be46e8593deadb2cec84b70b26725?d=identicon&s=25 Yi Wen (hayafirst)
on 2009-06-19 16:50
(Received via mailing list)
Yup, removing the condition fixed the problem. Thanks!
This topic is locked and can not be replied to.