您可以避免控制器測試,因爲所有的邏輯都可以通過驗收測試(使用rspec + Capybara)進行測試。我建議購買一本PDF書籍,這對於rspec學習來說是最好的選擇。 https://leanpub.com/everydayrailsrspec
在這裏,我給你舉個例子你的問題:
feature 'Visitor' do
background do
2.times |n| { User.new(username: "User #{n}") } #create 2 users to test list
end
scenario 'tries to view list of users on users index page' do
visit users_path #try to enter to users index page
expect(current_path).to eq users_path #check current path
expect(page).to have_content 'User 1' #check for User 1 from 'background'
expect(page).to have_content 'User 2' #check for User 2 from 'background'
end
end
簡單地說,我們是通過方法進入索引頁「參觀」,並希望看到一些信息。
你的問題中的措詞感到困惑。您在使用TDD時遇到困難 - 您發現它很複雜 - 您(不)瞭解整個程序?我想幫助編輯您的問題以使其更清楚,以便我或其他人可以更好地回答它。 – verdammelt