我正在爲服務器錯誤編寫API測試用例。我想存根控制器操作來引發錯誤以模擬服務器錯誤(500)。 在請求規範中,未設置controller
變量。RSpec請求規範中的控制器操作
it "Should return 500 upon server error" do
controller.stub(:index).and_raise(ArgumentError)
get "/users.json"
response.code.should eq("500")
end
控制器規格的請求規格? – apneadiving
我認爲@apneadiving是正確的,作爲控制器測試沒有任何意義。你正在琢磨你應該測試的整個方法。 – tokland
@apneadiving我的API測試規範是作爲請求規範實現的,幾乎所有的測試用例都是真正的請求規範。只有一種情況是混合的,因爲我需要在服務器錯誤時檢查錯誤代碼。我需要存根,因爲我無法觸發服務器錯誤。有沒有其他的方法來測試這個(除了使用控制器規範) –