Teamcity 9.1 supports NUnit 3 und es öffnet many other possibilities Tests auszuwählen, die für die Ausführung oder filtern. Ich würde empfehlen, --where=EXPRESSION
zu verwenden, die verwenden können. Jetzt können Sie sogar reguläre Ausdrücke verwenden, um Tests anzugeben, die Sie ausführen oder ausschließen möchten.
Beispiele
Haben Sie nur ein Test ausschließen möchten?
--where="method != 'TestName'"
Möchten Sie nur einen Test ausschließen? Kann mich nicht erinnern, den Namen genau, sondern etwas mit „BuggyMethod“ (~
bedeutet, dass ein regulärer Ausdruck beteiligt ist):
--where="method !~ 'BuggyMethod'"
Run alle Tests in einer Klasse definiert:
--where="class == 'My.Namespace.ClassName'"
Vergessen Sie den vollständigen Namespace ? Es ist kein Problem mehr - verwenden Sie einen regulären Ausdruck:
Sie können diese Ausdrücke auch kombinieren, um den gewünschten Effekt zu erzielen. Führen Sie alle Tests für die Klasse aber exlude alle Methoden, die „BuggyMethod“ enthalten:
--where="class =~ 'ClassName' and method !~ 'BuggyMethod'"
Dieser Ansatz ist viel flexibler und vermeidet Änderungen des Codes. Ich sehe keinen Punkt mehr für die Verwendung von Kategorien, es sei denn, Ihre Tests werden anhand von Kategorien klassifiziert.
http://stackoverflow.com/questions/15618225/teamcity-re-running-a-specific-build-step – MethodMan