2
讓我解釋一下這個問題......RSpec的:多用於斷言控制器規範
我測試Rails控制器使用RSpec,我有一個場景,其中約8斷言..
我不喜歡有一個「它」用的量斷言所以我所做的就是這樣的:
RSpec.shared_examples 'successful payment' do |term_type, years|
let(:surgeon_package) { assigns(:surgeon).reload.last_surgeon_package }
let(:payment) { surgeon_package.payments.first }
before do
put(:update_account, params)
end
it 'package term must be yearly' do
expect(surgeon_package.payment_term.term).to eq(1)
expect(surgeon_package.payment_term.term_type).to eq(term_type)
end
it 'package payments must be one' do
expect(surgeon_package.payments.count).to eq(1)
end
it '...'
end
但正如你可以看到我請求在每次行動:update_account
。
您認爲解決此問題的最佳方法是什麼?因爲我不想每次都請求/ update_account。
全局變量? $緩存?讓代碼回到一個「它」?想法?
感謝社區
你爲什麼要多次調用'update_account'動作?爲了不破壞測試數據,例如不更新一些記錄?或者你有其他原因嗎? – VAD