2017-05-09 3 views
-2

Ist das eine Möglichkeit, Fehlermeldungen nach negativen Werten zu überprüfen? Ich kann überprüfen, ob die richtige Ausnahme ausgelöst wurde, aber was ist, wenn meine Methode keine Ausnahme mit negativen Zahlen auslöst, nur WriteLine to Error-Ausgabestream.Wie überprüft man die Fehlermeldung in C#?

+0

Haben Sie versucht, Unit-Tests? –

+0

Was bedeutet "Anzeige"? Sie haben eine GUI, eine Konsolenanwendung? – tafia

+0

Eine Reihe von Zeilen auf die Konsole zu schreiben, um in verschiedenen Situationen angezeigt zu werden, ist oder kann ein einfacher, aber funktioneller Weg sein. In ähnlicher Weise können Sie Breakpoints setzen und die Elemente überprüfen, während Sie ein Debugging durchführen, wodurch Sie viele if-Anweisungen für die Konsole speichern können. – ToFo

Antwort

0

Da Sie die Ausnahme bereits behandelt haben und sie nicht erneut aufgetaucht ist, können Sie sie in Ihrem Test nicht mehr verarbeiten.

Aber da Sie wissen, dass eine Nachricht an Console.Error geschrieben ist, können Sie dies überprüfen, indem Console.Error zu einem benutzerdefinierten StringWriter Umleitung und überprüft, was so zu ihm geschrieben wurde:

public void TestWithNegatives() 
{ 
    using (StringWriter sw = new StringWriter()) 
    { 
     Console.SetError(sw); 
     List<int> list = MyMethod(); 
     // Check output in "Error": 
     Assert.IsFalse(string.IsNullOrEmpty(sw.ToString())); 
    } 
} 
+0

Vielen Dank! Es ist was ich brauchte. – programmo

Verwandte Themen