2011-09-14 99 views
15

我使用水豚做我的rails 3应用程序的集成测试。不能得到水豚-webkit工作

当我添加:JS =>真实的场景我的测试与硒的工作,但是当我更改为使用WebKit驱动程序的js我得到的错误,每个这样的:

水豚::驱动程序::的Webkit :: WebkitInvalidResponseError: 无法加载网址:http://www.example.dev:7171/user_sessions

我添加是多领域的应用所以在我spec_helper我设置端口: Capybara.server_port = 7171

,并在后台块我设置像app_host这个: Capybara.app_ho ST = “{http://#子域} .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进行自动测试。

回答

1

有一个悬而未决的问题的问题,似乎正是这样在github =>https://github.com/thoughtbot/capybara-webkit/issues/87

他们在那里有一些方法建议,看看是否能不帮你了。祝你好运!

+0

是尝试,但没有运气还是谢谢你!任何其他建议? –

+0

不幸的是:(我已upvoted你的问题,并会继续关注它incase我碰到别的东西。祝你好运! – StevenMcD

+0

好吧谢谢 –

0

只是想说我们在我们的Ubuntu CI服务器上有同样的错误。这是一个LTS版本,所以运行的是较旧的libqt(v4.6.2) - 升级(使用tarball)到4.7.4修复了这个问题。可能不会帮助你的情况,但值得检查的东西。

+1

感谢您的这个提示,我有上面的问题,这让我意识到,之间安装capybara-webkit,然后使用它,我已经更新QT到4.8在我的机器上,我需要重建宝石:)节省了我的小时数 – workmad3

+0

感谢您的评论(我认识你从#rubyonrails :) - 我是希望有人会看到它,这只是他们需要的小提示。 – smathy

+0

你运行的是什么版本的Ubuntu,@smathy? – thekingoftruth

1

您的应用程序是否重定向到安全(https://)网址?

如果是这样,您需要重新声明:对水豚webkit的驱动程序与:ignore_ssl_errors选项设置为true

Capybara.register_driver :webkit do |app| 
    Capybara::Driver::Webkit.new(app, :ignore_ssl_errors => true) 
end