2009-08-08 9 views

Antwort

15

Es gibt ein Beispiel in unserem Samples-Projekt namens PrioritizedFixtureSample, mit dem Sie die Reihenfolge der Tests steuern können.

Sehen Sie die Proben in unserem neuesten Release: http://xunit.codeplex.com/Release/ProjectReleases.aspx

+9

Kurz gesagt, der zweite Parameter auf die '[Fact]' Methode Attribut 'TestPriority' bezeichnet wird, in sich selbst, die eine ganze Zahl nimmt (signiert), die die Reihenfolge der Tests. Beweis A: '[Tatsache, TestPriorität (5)]'. Nur für den Fall, dass Sie das Beispielprojekt nicht herunterladen und laden wollten ... – Kezzer

+0

'Fact' scheint keine' TestPriority' Eigenschaft mehr zu haben. –

+0

Ich glaube nicht, dass es jemals in xUnit selbst war, schaue dir die Probe an, die Brad erwähnt, der Code für das Attribut ist da drin. –

5

Nein, ich glaube nicht, aber dann Unit-Tests per Definition sollte unabhängig sein, so bestellen sollte nicht Angelegenheit. Wo Sie eine natürliche Abhängigkeit haben, die Sie nicht trennen können, würde ich vorschlagen, dass Sie die Tests in einer Einheit mit mehreren Behauptungen kombinieren.

2

xUnit.net bietet keine Möglichkeit, Tests zu bestellen.

Einige andere Frameworks tun jedoch. In mbUnit können Sie beispielsweise eine Order-Eigenschaft an Ihre Testattribute anhängen. Viele TDD-Puristen sind der Meinung, dass dies missbräuchlich ist, und jeder Test, der eine Bestellung erfordert, sollte zu einem separaten Komponententest zusammengeführt werden, aber viele Leute finden es nützlich, unter bestimmten Umständen Tests bestellen zu können.