我正在使用Cucumber/Capybara組合測試Rails 3應用程序。我也嘗試使用Selenium來測試一些特定於JavaScript的場景,但遇到了難以理解的奇怪困難。爲什麼使用Selenium運行時,我的黃瓜測試失敗?
我對黃瓜/水豚的經驗很低,我對硒的經驗是零。
這裏的情景:
Scenario: Browsing events
Given many events exist
And I am on the events page
Then I should see a list of 15 events
When I follow the first event
Then I should be on the event page
And I should see a google map
And I should see the event details
在那種情況下RackTest下運行,它通過了所有方式向谷歌地圖的步驟,此時它失敗,因爲沒有JavaScript的。這是預料之中的。
當我用默認的JavaScript驅動程序(Selenium)運行測試時,它在第三步失敗(我應該看到一個15個事件的列表)。當我觀察瀏覽器窗口時,確實事件列表根本不包含任何事件 - 就好像它們不存在於數據庫中一樣。
順便提一下,第一步(很多事件存在)使用FactoryGirl創建事件負載。
由於這對我來說都很新,我不知道我是否被一個典型的疑難雜症抓住了?除了從rails g cucumber:install
進行的標準安裝以外,我沒有進行任何配置更改。另外,如果相關,我使用OSX。
感謝
謝謝。設置'DatabaseCleaner.strategy =:truncation'確實已經成功了。 – aaronrussell 2011-04-03 17:04:23
感謝@Steve http://pastie.org/1745020鏈接,這對我來說是完美的! – 2013-02-08 15:35:22