Ich würde sagen, das Präfix "test" ist einfach ein Holdover von den Vorannotationstagen, wenn dies erforderlich war. Ich würde vorschlagen, dass Sie einfach sinnvolle Namen für Ihre Testfälle verwenden (und das kann mit oder ohne "Test" bedeuten).
Ich bevorzuge es, die Testmethode so zu benennen, dass klar ist, was getestet wird. d. h.
%Vor%Alle Testfälle befinden sich sowieso in einem Testverzeichnis und alle tatsächlichen Tests sind mit Anmerkungen versehen, so dass das Präfix "test" ziemlich redundant ist.
In der ursprünglichen JUnit mussten die Testmethoden %code% beginnen. Viele Frameworks für andere Sprachen haben diese Konvention kopiert. Obwohl es in JUnit nicht mehr der Fall ist, und obwohl andere Frameworks unterschiedlich sein können, sind die meisten Programmierer immer noch ziemlich vertraut mit Methoden, die z. %code% als Unit-Tests, daher denke ich, dass es gut ist, aus diesem Grund an der %code% -Konvention festzuhalten.
Ich bevorzuge das Suffix %code% . Es ist möglich, dass Sie eine Methode mit dem Präfix %code% in Ihrem Projekt haben, z. %code% und Ihr Test würde dann %code% heißen, weil %code% einfach sehr seltsam aussehen würde.
Ich verwende auch das %code% Eclipse-Plugin, das automatisch eine Testmethode mit dem Präfix %code% erstellt, wenn ich %code% drücke. oder springe zur Testmethode, wenn ich %code% drücke. (Sie können zwar konfigurieren, welches Präfix verwendet wird.) Wenn Sie nicht mit Ihrer Benennung übereinstimmen, können automatisierte Tools wie MoreUnit Ihnen beim Testen nicht helfen.
Konsistenz ist wichtiger als korrekt bei der Benennung von Problemen. Wenn es eine Frage zu einem Projekt gibt, sollte das für das Projekt verantwortliche technische Mitglied die Kodierungspraktiken formal umreißen, so dass solche Probleme wertvolle Projektzeit nicht zerstören.
Die 'Should'-Konvention ist auf den verhaltensorientierten Entwicklungsstil ausgerichtet.
Ich persönlich bevorzuge es wirklich, Tests in diesem Stil zu schreiben, da es Sie ermutigt, Tests zu schreiben, die Spezifikationen lesen und mehr mit dem Verhalten der Klasse übereinstimmen oder System, das Sie testen.
Wenn möglich, gehe ich manchmal einen Schritt weiter und gebe der Testklasse noch mehr Kontext mit ihrem Namen:
%Vor%Indem Sie Ihre Klassen benennen und in diesem Spezifikations-Stil über sie nachdenken, können Sie eine Menge Hinweise dazu bekommen, welche Tests zu schreiben sind und in welcher Reihenfolge Sie sollten schreibe die Tests und mache sie grün.
Ja, "sollte" vs "test" ist nur ein Präfix und es ist wichtig, konsistent zu sein, aber diese Frage bezieht sich auch auf den Stil und die Denkweise, wie Sie Ihren Code testen und wählen, welche Tests geschrieben werden sollen. BDD hat eine Menge Wert, also schlage ich vor, weiter zu lesen und dies zu versuchen.
Die 'Should'-Konvention ist auf den verhaltensorientierten Entwicklungsstil ausgerichtet.
Ich persönlich bevorzuge es wirklich, Tests in diesem Stil zu schreiben, da es Sie ermutigt, Tests zu schreiben, die Spezifikationen lesen und mehr mit dem Verhalten der Klasse übereinstimmen oder System, das Sie testen.
Wenn möglich, gehe ich manchmal einen Schritt weiter und gebe der Testklasse noch mehr Kontext mit ihrem Namen:
%Vor%Indem Sie Ihre Klassen benennen und in diesem Spezifikations-Stil über sie nachdenken, können Sie eine Menge Hinweise dazu bekommen, welche Tests zu schreiben sind und in welcher Reihenfolge Sie sollten schreibe die Tests und mache sie grün.
Ja, "sollte" vs "test" ist nur ein Präfix und es ist wichtig, konsistent zu sein, aber diese Frage bezieht sich auch auf den Stil und die Denkweise, wie Sie Ihren Code testen und wählen, welche Tests geschrieben werden sollen. BDD hat eine Menge Wert, also schlage ich vor, weiter zu lesen und dies zu versuchen.
Ich würde sagen, das Präfix "test" ist einfach ein Holdover von den Vorannotationstagen, wenn dies erforderlich war. Ich würde vorschlagen, dass Sie einfach sinnvolle Namen für Ihre Testfälle verwenden (und das kann mit oder ohne "Test" bedeuten).
Ich bevorzuge es, die Testmethode so zu benennen, dass klar ist, was getestet wird. d. h.
%Vor%Alle Testfälle befinden sich sowieso in einem Testverzeichnis und alle tatsächlichen Tests sind mit Anmerkungen versehen, so dass das Präfix "test" ziemlich redundant ist.
Konsistenz ist wichtiger als korrekt bei der Benennung von Problemen. Wenn es eine Frage zu einem Projekt gibt, sollte das für das Projekt verantwortliche technische Mitglied die Kodierungspraktiken formal umreißen, so dass solche Probleme wertvolle Projektzeit nicht zerstören.
In der ursprünglichen JUnit mussten die Testmethoden test
beginnen. Viele Frameworks für andere Sprachen haben diese Konvention kopiert. Obwohl es in JUnit nicht mehr der Fall ist, und obwohl andere Frameworks unterschiedlich sein können, sind die meisten Programmierer immer noch ziemlich vertraut mit Methoden, die z. testX
als Unit-Tests, daher denke ich, dass es gut ist, aus diesem Grund an der test
-Konvention festzuhalten.
Ich bevorzuge das Suffix test
. Es ist möglich, dass Sie eine Methode mit dem Präfix should
in Ihrem Projekt haben, z. shouldBuy
und Ihr Test würde dann testShouldBuy
heißen, weil shouldShouldBuy
einfach sehr seltsam aussehen würde.
Ich verwende auch das MoreUnit
Eclipse-Plugin, das automatisch eine Testmethode mit dem Präfix test
erstellt, wenn ich Ctrl+U
drücke. oder springe zur Testmethode, wenn ich Ctrl+J
drücke. (Sie können zwar konfigurieren, welches Präfix verwendet wird.) Wenn Sie nicht mit Ihrer Benennung übereinstimmen, können automatisierte Tools wie MoreUnit Ihnen beim Testen nicht helfen.
Tags und Links java junit junit4 naming-conventions