2009-01-29 16 views
8

Wenn ich meine DAL teste, muss ich aufgrund von Abhängigkeiten einige Datenbank-Entitäten vor anderen erstellen, gibt es einen Weg über Methodenattribute oder etwas, was ich machen kann, dass NUnit meine Tests in der angegebenen Reihenfolge ausführt?Gibt es eine Möglichkeit, NUnit-Tests in einer bestimmten Reihenfolge auszuführen?

+3

Die Leute fragen das OP * w hy * er kümmert sich um die Bestellung. Ich kann nicht für ihn sprechen, aber ich habe nach dieser Funktionalität gesucht, weil ich eine riesige Liste fehlgeschlagener Tests hatte und sie (und die grünen Ergebnisse) in der Reihenfolge, in der sie geschrieben wurden, beheben wollte, nicht in der Reihenfolge, in der NUnit sie auflistet. Sie waren in keiner Weise voneinander abhängig, sie waren einfach besser für die Lesbarkeit. – Terry

Antwort

12

Verwenden Sie in Ihren Tests die Methoden Setup and Teardown. Erstellen Sie alle Dinge, die Sie für Ihren Test benötigen, in einer Methode, die mit dem Attribut [Setup] markiert ist. Verwenden Sie eine mit einem [Teardown] -Attribut markierte Methode, um Ihre Verbindungen usw. zu schließen.

+0

Einverstanden. Außerdem sollten Ihre Tests IMMER unabhängig von der Bestellung sein. Ihr Code wird dadurch sauberer sein. – Kevin

+0

Und weiter ... ein Upgrade auf eine zukünftige Version auf Nunit garantiert möglicherweise nicht die Reihenfolge, in der sie ausgeführt werden. – Fortyrunner

5

Idealerweise ist die Ausführung von Tests in einer bestimmten Reihenfolge gegen die Philosophie von Komponententests, bei der jeder Test unabhängig und unabhängig von den anderen sein sollte Der Grund, warum sie alphabetisch ausgeführt werden, ist, weil die Reflexion die Methoden in dieser Reihenfolge zurückgibt. Allerdings hilft Ihnen die Verwendung von Setup- und Teardown-Methoden in gewisser Weise. Nachdem alles gesagt, dass Sie einen Blick auf diese Links nehmen, könnte es ein bisschen ein gelesen, aber der Typ der Artikelserie zu schreiben hat einen Punkt

LINK Pt1

LINK Pt2

LINK Pt3

LINK Pt4

LINK Pt5

Verwandte Themen