Während ich RSpec schrieb, musste ich einige Zeit damit verbringen, nach "Welches Produkt und welche Spezifikation habe ich für einen ähnlichen Vergleich geschrieben?" Zu suchen. Deshalb werde ich es hier als Artikel zusammenfassen. .. Ich hoffe, es hilft Ihnen und anderen Entwicklern in Zukunft.
it 'Das Fehlerprotokoll wird ausgegeben' do
expect(Rails.logger).to receive(:error).with(/code: 400/)
#Schreiben Sie unten den Prozess, den Sie testen möchten
end
Als Punkt
it 'Es wird kein Fehlerprotokoll ausgegeben' do
expect(Rails.logger).to receive(:error).exactly(0).times
#Schreiben Sie unten den Prozess, den Sie testen möchten
end
In der Anwendung des vorherigen Beispiels wollte ich auch überprüfen: "Wenn der Prozess normal abgeschlossen wird, sollte kein Fehlerprotokoll ausgegeben werden." Da Sie die Häufigkeit angeben können, indem Sie eine Verbindung zur Empfangsmethode herstellen, habe ich bestätigt, dass die Methode nicht in ".exactly (0) .times" aufgerufen wurde. Referenzierte Site
Leute, die oft Ruby und Rails schreiben, sagen vielleicht: "Es ist natürlich!", Aber ich wurde kürzlich zum ersten Mal mit Rails in vollem Umfang entwickelt, und ich bin verwirrt. Ich habe es bekommen, als ich es entwickelt habe, also hoffe ich, dass Sie es mit einem sanften Auge sehen können. Ich werde es hinzufügen, wenn etwas herauskommt, das brauchbar zu sein scheint.
Vielen Dank.
Recommended Posts