Diese Prosa von Alberto Savoia beantwortet genau diese Frage (auf eine unterhaltsame Art und Weise!):
Testivus über Testabdeckung
Eines frühen Morgens fragte ein Programmierer den großen Meister:
„Ich bin bereit, einige Unit-Tests zu schreiben. Welche Codeabdeckung sollte ich anstreben? “
Der große Meister antwortete:
"Mach dir keine Sorgen um die Berichterstattung, schreibe einfach ein paar gute Tests."
Der Programmierer lächelte, verbeugte sich und ging.
...
Später an diesem Tag stellte ein zweiter Programmierer dieselbe Frage.
Der große Meister zeigte auf einen Topf mit kochendem Wasser und sagte:
"Wie viele Reiskörner soll ich in diesen Topf geben?"
Der Programmierer sah verwirrt aus und antwortete:
„Wie kann ich es dir möglicherweise sagen? Es hängt davon ab, wie viele Menschen Sie füttern müssen, wie hungrig sie sind, welche anderen Lebensmittel Sie servieren, wie viel Reis Sie zur Verfügung haben und so weiter. “
"Genau", sagte der große Meister.
Der zweite Programmierer lächelte, verbeugte sich und ging.
...
Gegen Ende des Tages kam ein dritter Programmierer und stellte dieselbe Frage zur Codeabdeckung.
"Achtzig Prozent und nicht weniger!" Antwortete der Meister mit strenger Stimme und schlug mit der Faust auf den Tisch.
Der dritte Programmierer lächelte, verbeugte sich und ging.
...
Nach dieser letzten Antwort trat ein junger Lehrling an den großen Meister heran:
„Großer Meister, heute habe ich gehört, dass Sie dieselbe Frage zur Codeabdeckung mit drei verschiedenen Antworten beantworten. Warum?"
Der große Meister stand von seinem Stuhl auf:
"Komm, hol mir frischen Tee und lass uns darüber reden."
Nachdem sie ihre Tassen mit heißem grünem Tee gefüllt hatten, begann der große Meister zu antworten:
„Der erste Programmierer ist neu und beginnt gerade mit dem Testen. Im Moment hat er viel Code und keine Tests. Er hat noch einen langen Weg vor sich; Die Konzentration auf die Codeabdeckung zu diesem Zeitpunkt wäre deprimierend und völlig nutzlos. Er ist besser dran, sich nur daran zu gewöhnen, einige Tests zu schreiben und durchzuführen. Er kann sich später um die Berichterstattung kümmern. “
„Der zweite Programmierer hingegen hat sowohl Erfahrung im Programmieren als auch im Testen. Als ich sie fragte, wie viele Reiskörner ich in einen Topf geben sollte, half ich ihr zu erkennen, dass die Menge der erforderlichen Tests von einer Reihe von Faktoren abhängt, und sie kennt diese Faktoren besser als ich - es ist schließlich ihr Code . Es gibt keine einfache Antwort, und sie ist klug genug, um mit der Wahrheit umzugehen und damit zu arbeiten. “
"Ich verstehe", sagte der junge Lehrling, "aber wenn es keine einfache Antwort gibt, warum haben Sie dann dem dritten Programmierer 'Achtzig Prozent und nicht weniger' geantwortet?"
Der große Meister lachte so heftig und laut, dass sein Bauch, ein Beweis dafür, dass er mehr als nur grünen Tee trank, auf und ab flatterte.
"Der dritte Programmierer möchte nur einfache Antworten - auch wenn es keine einfachen Antworten gibt ... und folgt ihnen dann sowieso nicht."
Der junge Lehrling und der grizzled große Meister tranken ihren Tee in nachdenklicher Stille.