2017-03-15 31 views
0

我只注意到奇怪的Rspec行爲。我不知道這是Rspec的錯誤還是我的測試方法不正確。RSpec控制器測試不會引起錯誤

我有這個控制器測試(我省掉不必要件):

describe 'GET #new' do 
def get_new(group_id = nil) 
    get :new, group_id: group_id 
end 

context 'with logged in user' do 
    context 'with group_id' do 
    let(:group) { create(:group) } 

    before { get_new(group.to_param)} 

    it 'renders correct template' do 
     expect(response).to render_template(:new) 
    end 

    it 'returns success' do 
     expect(response).to be_success 
    end 
    end 
end 
end 

這是我一直在測試控制器很長一段時間,考慮覈對模板和響應代碼的方式就足以讓肯定控制器呈現實際頁面。 browser error 但是,我才發現,原來這兩個測試都通過了,而事實上有這樣的錯誤:

然而現在,在頁面上調整的形式,我在這個動作,我可以在瀏覽器中清楚地看到得到一個錯誤。

我在做什麼錯,我如何檢查我的規範中的這個錯誤?

回答

1

您的錯誤來自您的視圖,但默認情況下,RSpec中的控制器測試不會呈現視圖。您可以使用rspec-railsrender_views方法強制您的控制器規範渲染視圖。

+0

是的,你是對的 – borisano