Meiner Meinung nach dienen die Unit-Testfälle selbst als Dokumentation für den Code. Mein Unternehmen möchte, dass ich detaillierte Kommentare zu Java-Dokumenten über Unit-Testfälle schreibe. Ist das notwendig? Schreibst du solche Kommentare?
Meiner Meinung nach dienen die Unit-Testfälle selbst als Dokumentation für den Code. Mein Unternehmen möchte, dass ich detaillierte Kommentare zu Java-Dokumenten über Unit-Testfälle schreibe. Ist das notwendig? Schreibst du solche Kommentare?
Antworten:
Was ich mache ist JAVADOC-Kommentar:
die Klasse, die angibt, welche Klasse Unit-getestet ist (obwohl es mir klar sein sollte, da die Best Practice zu diesem Thema vorschlägt, dass der Name des Testfalls der Name der Klasse + "Test" oder + "TestCase" sein sollte). Dies erfolgt mit dem JAVADOC-Kommentar {@link XXXClass}
die Methoden, die angeben, welche Methode getestet wird ({@link XXXClass # method1}). Manchmal brauche ich mehrere Testmethoden für eine Methode einer Klasse, um alle Pfade richtig zu testen. Wenn es passiert, schreibe ich eine zusätzliche Zeile, in der angegeben ist, welchen Pfad ich im Inneren teste (aber ich weiche nie von meiner einzeiligen Konvention ab).
Ansonsten kein weiterer Kommentar. Um ihre Aufmerksamkeit woanders zu lenken, könnten Sie vielleicht etwas wie Cobertura verwenden , um hübsche Grafiken zur Codeabdeckung zu generieren und sie auf diese Weise glücklich zu machen :-)
Zusätzlicher Hinweis: Ich beziehe mich auf Unit-Testfälle. Wenn es sich um Integrationstestfälle handelt, sind möglicherweise ein oder zwei weitere Zeilen erforderlich, um zu erklären, was vor sich geht.
Die Dokumentationsanforderungen für jeden Code werden in den Antworten auf diese Frage ziemlich vollständig behandelt: Mein Chef möchte eine ausführliche englische Erklärung unseres Codes
Als Zusammenfassung der Antworten sehen Sie dort "Es hängt von Ihrer Situation ab". Es gibt Fälle, in denen dies angemessen (und empfohlen) ist, und andere, in denen es Zeitverschwendung ist.
Javadoc-Kommentare können in einem separaten Referenzdokument extrahiert und formatiert werden, Unit-Tests jedoch nicht. Denken Sie auch daran, dass das, was Sie in Worten schreiben, vom tatsächlichen Code abweichen kann und Sie normalerweise das tatsächlich erwartete Verhalten in Worten beschreiben. Eine Möglichkeit, Fehler zu finden, besteht darin, die Dokumentation mit dem tatsächlichen Code zu vergleichen, wenn sie nicht übereinstimmen - es handelt sich um einen Fehler (in beiden Fällen und manchmal auch in beiden Fällen).
Unit-Test dient zum Testen, nicht zur Dokumentation. Die Verwendung des Komponententests als Dokumentation ist falsch und sollte nicht durchgeführt werden.