Wie überprüft man in MSTest, dass eine Methode eine Exception auslöst?
Hallo zusammen! Ich bin neu im Unit-Testing mit C# und verwende MSTest. Ich habe eine Methode, die unter bestimmten Bedingungen eine Exception auslösen soll. Zum Beispiel diese einfache Divisionsmethode:
```csharp
public int Divide(int a, int b)
{
if (b == 0)
throw new DivideByZeroException("Division durch Null ist nicht erlaubt!");
return a / b;
}
```
Ich möchte einen Test schreiben, der überprüft, dass bei Übergabe von b = 0 tatsächlich eine DivideByZeroException ausgelöst wird. Aber ich verstehe nicht, wie ich das richtig mit Assert machen kann. Ich habe versucht, den Aufruf in try-catch zu packen und Assert.Fail zu setzen, aber das sieht sehr umständlich aus. Ich habe gesehen, dass es in anderen Frameworks (z.B. NUnit) ein spezielles Attribut [ExpectedException] gibt, aber in MSTest scheint es veraltet zu sein oder funktioniert anders. Könnt ihr mir bitte sagen, wie man einen solchen Test in MSTest richtig und elegant schreibt? Gibt es vielleicht eine spezielle Assert-Methode dafür? Ich wäre für ein Codebeispiel dankbar.
<<>>
Verwendung von Assert.Thro
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen