无法让 capybara-webkit 工作
我正在使用 capybara 在我的 Rails 3 应用程序上进行集成测试。
当我添加 :js =>对于我的测试使用 selenium 的情况来说是这样,但是当我更改为使用 js 的 webkit 驱动程序时,我会收到如下错误:
Capybara::Driver::Webkit::WebkitInvalidResponseError: 无法加载网址: http://www.example.dev:7171/user_sessions
我的添加是一个多域应用程序,因此在我的 spec_helper 中我设置了端口: Capybara.server_port = 7171
在后台块中,我像这样设置 app_host : Capybara.app_host = "http://#{subdomain}.example.dev:7171"
如果我然后将其添加到我的spec_helper rspec .configure 块然后我得到上面的错误:
config.before(:each) do
DatabaseCleaner.start
Capybara.run_server = false
Capybara.javascript_driver = :webkit
Capybara.default_selector = :css
Capybara.server_port = 7171
end
任何人都可以帮忙解决这个问题吗?我还使用 spork 进行自动测试。
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 am also using spork for auto testing.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
有一个未解决的问题,在 github 上看起来与此完全一样 => https://github.com/thoughtbot/capybara-webkit/issues/87
他们在那里提供了一些解决方法建议,看看这是否对您有帮助。祝你好运!
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!
您的应用程序是否重定向到安全 (https://) url?
如果是这样,您需要重新声明 Capybara 的 :webkit 驱动程序,并将
:ignore_ssl_errors
选项设置为true
: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 totrue
:只是想说我们的 Ubuntu CI 服务器上也遇到了同样的错误。这是一个 LTS 版本,因此运行的是较旧的 libqt (v4.6.2) - 升级(使用 tarball)到 4.7.4 解决了问题。可能对你的情况没有帮助,但值得检查一下。
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.