Freigeben über


Verwenden der Assert-Klassen

Verwenden Sie die Assert-Klassen des UnitTestingFramework-Namespace, um bestimmte Funktionen zu überprüfen.Eine Komponententestmethode führt den Code einer Methode in Ihrem Entwicklungscode aus, aber sie meldet die korrekte Ausführung des Codeverhaltens nur, wenn Sie Assert-Anweisungen einschließen.

Arten von Assert-Klassen

Der Microsoft.VisualStudio.TestTools.UnitTesting-Namespace stellt mehrere Arten von Assert-Klassen bereit:

Assert

In Ihrer Testmethode können Sie beliebig viele Methoden der Assert-Klasse aufrufen, z. B. Assert.AreEqual().Die Assert-Klasse stellt eine Vielzahl von Methoden bereit, für die in vielen Fällen mehrere Überladungen vorhanden sind.

CollectionAssert

Verwenden Sie die CollectionAssert-Klasse, um Objektauflistungen zu vergleichen und den Zustand einer oder mehrerer Auflistungen zu überprüfen.

StringAssert

Verwenden Sie die StringAssert-Klasse, um Zeichenfolgen zu vergleichen.Diese Klasse enthält eine Vielzahl nützlicher Methoden, z. B. StringAssert.Contains, StringAssert.Matches oder StringAssert.StartsWith.

AssertFailedException

Die AssertFailedException-Ausnahme wird immer dann ausgelöst, wenn ein Test fehlschlägt.Ein Test schlägt fehl, wenn eine Zeitüberschreitung auftritt, eine unerwartete Ausnahme ausgelöst wird oder der Test eine Assert-Anweisung enthält, die zum Ergebnis Fehler führt.

AssertInconclusiveException

Die AssertInconclusiveException wird immer dann ausgelöst, wenn ein Test das Ergebnis Nicht eindeutig erzeugt.In der Regel fügen Sie einem Test für die Dauer der Testentwicklung eine Assert.Inconclusive-Anweisung hinzu, um anzuzeigen, dass der Test noch nicht zur Ausführung bereit ist.

HinweisHinweis

Eine andere Möglichkeit besteht darin, einen noch nicht zur Ausführung geeigneten Test mit dem Ignore-Attribut zu kennzeichnen.Dies hat jedoch den Nachteil, dass Berichte zur Anzahl der noch zu implementierenden Tests nur noch mit einigem Aufwand generiert werden können.

UnitTestAssertException

Wenn Sie eine neue Assert-Ausnahmeklasse schreiben, kann die Ausnahme leichter als Assert-Fehler erkannt werden, wenn die Klasse von der Basisklasse UnitTestAssertException erbt. Andernfalls lassen sich Assert-Ausnahmen nicht eindeutig von unerwarteten Ausnahmen unterscheiden, die ggf. durch Ihren Test- oder Produktionscode ausgelöst werden.

ExpectedExceptionAttribute

Ergänzen Sie eine Testmethode durch das ExpectedExceptionAttribute-Attribut, wenn die Testmethode überprüfen soll, ob eine Ausnahme wie erwartet durch eine Methode in Ihrem Entwicklungscode ausgelöst wird.

Siehe auch

Referenz

Microsoft.VisualStudio.TestTools.UnitTesting

Weitere Ressourcen

Erstellen und Ausführen von Komponententests für vorhandenen Code