2011-09-14 126 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