Wenn wir den Rot-, Grün- und Refaktor-Zyklus durchführen, sollten wir immer den Mindestcode schreiben, um den Test zu bestehen. So wurde mir TDD beigebracht und so beschreiben fast alle Bücher den Prozess.
Aber was ist mit der Protokollierung?
Ehrlich gesagt habe ich selten die Protokollierung in einer Anwendung verwendet, es sei denn, es geschah etwas wirklich Kompliziertes. Ich habe jedoch zahlreiche Posts gesehen, die über die Wichtigkeit einer ordnungsgemäßen Protokollierung sprechen.
Abgesehen von der Protokollierung einer Ausnahme konnte ich die tatsächliche Bedeutung der Protokollierung in einer ordnungsgemäß getesteten Anwendung (Einheiten- / Integrations- / Abnahmetests) nicht rechtfertigen.
Meine Fragen sind also:
- Müssen wir uns anmelden, wenn wir TDD machen? Wird ein nicht bestandener Test nicht aufdecken, was mit der Anwendung nicht stimmt?
- Sollten wir für jede Methode in jeder Klasse einen Test für den Protokollierungsprozess hinzufügen?
- Wenn zum Beispiel einige Protokollebenen in der Produktionsumgebung deaktiviert sind, führt dies dann nicht zu einer Abhängigkeit zwischen den Tests und der Umgebung?
- Die Leute reden darüber, wie Protokolle das Debuggen vereinfachen, aber einer der Hauptvorteile von TDD ist, dass ich immer weiß, was aufgrund eines fehlgeschlagenen Tests falsch ist.
Gibt es etwas, das ich dort verpasse?