Ecco il mio test. L'errore che sto ottenendo è ActiveRecord :: RecordNotFound: Impossibile trovare MedicalStudentProfile con 'id' = 1001. Sto usando build_stubbed correttamente?FactoryGirl build_stubbed & RSpec - Genera ID ma non riesce a trovare l'ID durante il test Mostra azione
RSpec prova
RSpec.describe MedicalStudentProfilesController, type: :controller do
let!(:profile){build_stubbed(:medical_student_profile)}
let!(:user){build_stubbed(:user)}
describe 'GET show' do
it 'should show the requested object' do
sign_in user
get :show, id: profile.id
expect(assigns(:profile)).to eq profile
end
end
end
controller
def show
@profile = MedicalStudentProfile.find params[:id]
end
Grazie. Ho controllato in build_stubbed per accelerare i test del controller, ma sembra non essere applicabile qui. –
È possibile simulare o arrestare il metodo di ricerca della classe MedicalStudentProfile per evitare l'hit del database. In questo modo si utilizzano i mock per specificare il comportamento del controller anziché prevedere un risultato del database. Consiglio vivamente le [Rails 4 Test Prescriptions] (http://www.amazon.com/Rails-Test-Prescriptions-Healthy-Codebase/dp/1941222196/ref=sr_1_1?s=books&ie=UTF8&qid=1437766269&sr=1- 1 & keywords = rails + 4 + test + prescrizioni) prenota se vuoi saperne di più. – izaban
Ho capito quanto il DB sia utile per le prestazioni del test, ma non è questo tipo di sconfitta lo scopo di un test di integrazione? – max