Der BDD-Benennungsansatz funktioniert perfekt, wenn es eine Methode in einer Klasse gibt, die Sie testen. Angenommen, wir haben eine Connector-Klasse mit der Connect-Methode:
%Vor%Schön, oder? Aber ich bin verwirrt, wenn ich Tests benennen muss, wenn es mehrere Methoden in einer Klasse gibt (nehmen wir an, wir haben unserer Klasse die Disconnect-Methode hinzugefügt).
Ich sehe zwei mögliche Lösungen. Die erste besteht darin, ein Präfix mit einem Methodennamen wie folgt hinzuzufügen:
%Vor%Ein anderer Ansatz besteht darin, verschachtelte Testklassen für jede Methode, die Sie testen, einzuführen.
%Vor%Ehrlich gesagt, beide Ansätze fühlen sich ein wenig an (vielleicht weil ich nicht daran gewöhnt bin). Was ist der empfohlene Weg?
In meinem Fall versuche ich zuerst, Klassen abhängig von den Vor- und Nachbedingungen zu trennen, damit ich einige Verhaltensweisen gruppieren und die damit verbundenen Dinge zusammenhalten kann. In Ihrem Fall könnte eine Vorbedingung beispielsweise "Getrennt" sein, sodass Sie die "nicht verbundene Umgebung" mit Attributen wie ClassInitialize, TestInitialize, TestCleanup, ClassCleanup usw. vorbereiten können. (hier einige Beispiele in MSDN )
Und bitte, wie die anderen Entwickler empfohlen haben, vergiss nicht die Namenskonventionen .
Ich hoffe, diese Hilfe, Grüße.
Da Testfälle völlig unabhängig voneinander sind, müssen Sie eine statische Klasse verwenden, um diejenigen Werte, Verbindungen usw. zu initialisieren, die Sie später für Ihren Test verwenden werden. Wenn Sie Einzelpersonen Werte und Initiatoren verwenden möchten, müssen Sie sie in Ihren Klassen einzeln deklarieren. Ich benutze für dieses Nunit-Framework.
Und übrigens, Sie sind in c #, verwenden Sie die Namenskonvention von .net-Entwicklern ...