Ich beginne (zumindest versuche), Codierung mit TDD-Prinzipien zu tun, und ich habe diese Frage: Wieviele Tests muss ich schreiben, bevor ich tatsächlich mit der Codierung beginne? B. eine hypothetisch Math
Klasse und eine Methode Divide(int a, int b)
.Wie viel Unit-Testing vor dem Codieren einer Methode/Klasse?
a) Muss ich, um alle Methoden der Math
Klasse zu testen (Sum
, Average
, ...) starten, bevor Math
Codierung?
b) Muss ich die Methode Divide
vollständig testen, zum Beispiel für die Division durch Null, bevor Sie die Methode programmieren?
c) Oder ich kann eine einfache Testbestätigung erstellen und überprüfen, dass sie fehlschlägt, den Code schreiben und prüfen, ob alles in Ordnung ist, den Prozess für jede der Assertionen einer Methode wiederholen?
Ich denke, die Option c) ist die richtige, aber ich konnte keine Antwort finden (Ich habe einige Suchen, konnte aber keine definitive Antwort finden).
Test-Driven Development ist sehr viel über Design, also wenn Sie fragen müssen, würde ich vorschlagen, dass Sie mehr über Design-Prinzipien wissen müssen. Sie können den ganzen Tag rot-grün-umgestalten, aber ohne eine gute Grundlage im Design, werden Sie sich schließlich in eine Ecke einordnen. –
TDD-Puristen würden sicherlich nicht befürworten, zuerst das gesamte Verhalten der Methode zu kodieren. Ein fehlgeschlagener Test nach dem anderen. –
TDD geht auch nicht darum, "eine Assertion" zu machen (was * c) * explizit erwähnt). –