Ich habe mich gefragt, ob es ein gutes Argument für oder gegen die Verwendung von Hintergründen in Gurken gibt, verglichen mit der Verwendung von Tags und Haken.
Wenn sich ein angemeldeter Benutzer vor dem Start eines Tests angemeldet hat, könnte er folgendermaßen aussehen:
%Vor%oder wie folgt:
%Vor%+
%Vor%Irgendeine Idee, wenn Sie eine über die andere bevorzugen?
Background
ist nützlich, wenn Sie einen allgemeinen kundenlesbaren (nicht technischen) Hintergrund für Ihr Szenario bereitstellen. Es lohnt sich, es zu verwenden, wenn Sie möchten, dass explizit über diese Initialisierung im Text Ihres Features informiert wird.
Aber manchmal ist die Teardown- (und Setup-) Logik eine Implementierungsdetail und wird in Before
, After
oder Around
hooks implementiert (weil der Leser Ihrer Spezifikation nicht über diese technischen Dinge Bescheid wissen muss).
Zusammenfassung : Verwenden Sie Hintergrund, wenn Sie den Leser über Ihre Spezifikation des Hintergrunds informieren und Hooks verwenden möchten, wenn der Hintergrund eine Implementierungsdetails ist.
In Ihrem Beispiel ist Hintergrund die beste Wahl.
Definitiv das erste (IMHO), da es alles in der universell lesbaren Gherkin-Feature-Datei erfasst. Die Tags sind nur wirklich da, um dem Läufer zu helfen - sie sind die Implementierungsebene. Was Sie hier beschreiben, ist Teil der Beschreibung dessen, was vor sich geht.