I am using capybara to do integration testing on my rails 3 app.
When i add :js => true to a scenario my tests work with selenium but when i change to use the webkit driver for js i get errors for each like this :
Capybara::Driver::Webkit::WebkitInvalidResponseError: Unable to load URL: http://www.example.dev:7171/user_sessions
My add is a multi domain app so in my spec_helper i set port : Capybara.server_port = 7171
And in a background block i set the app_host like this : Capybara.app_host = "http://#{subdomain}.example.dev:7171"
If i then add this to my spec_helper rspec.configure block i then get the errors above :
config.before(:each) do
DatabaseCleaner.start
Capybara.run_server = false
Capybara.javascript_driver = :webkit
Capybara.default_selector = :css
Capybara.server_port = 7171
end
Can anyone help with this? I 开发者_Go百科am also using spork for auto testing.
There is an open issue for an issue that seems exactly like this on github => https://github.com/thoughtbot/capybara-webkit/issues/87
They have some workaround suggestions in there, see if that doesn't help you out. Good luck!
Is your application redirecting to a secure (https://) url?
If so you'll need to redeclare the :webkit driver for Capybara with the :ignore_ssl_errors
option set to true
:
Capybara.register_driver :webkit do |app|
Capybara::Driver::Webkit.new(app, :ignore_ssl_errors => true)
end
Just wanted to say that we just had the same error on our Ubuntu CI server. It's an LTS build and so was running an older libqt (v4.6.2) - upgrading (using the tarball) to 4.7.4 fixed the problem. Probably won't help your situation, but something worth checking.
精彩评论