2015-07-03 76 views
0

我有一個集成測試與水豚驅動器poltergeist運行一個rails應用程序。他們都跑得很好。使用水豚poltergeist獲取外部頁面

我有一個測試,但是我需要點擊一個外部url例如http://www.google.com - 我不能得到這個工作,它總是隻加載本地應用程序。

如果我例如執行以下操作:

visit "http://google.com" 
page.html 

它輸出我的rails頭版的HTML應用程序,而不是

有沒有人得到遠程URL工作google.com的HTML與當地的測試一起呢?

回答

1

事實證明,我的測試實際上是使用默認驅動程序,只有在您手動切換到使用js驅動程序時才使用poltergeist。機架驅動程序無法訪問外部URL,因此您需要確保切換到js驅動程序。因此,要解決上述你只需要做:

Capybara.current_driver = Capybara.javascript_driver 
visit "http://google.com" 
page.html 

也爲其他有同樣問題,其值得一試https://gist.github.com/turadg/5399790

+1

作爲替代方案,一個很常見的解決方案是標籤要求JS驅動程序測試與:js => true。例如RSpec.feature'用戶註冊',js:true do – tgf

+0

是的,但在我的情況下,我使用minitest而不是rspec。 – Nick

相關問題