Ich habe diese Eigenschaft:Kann ich NUnit so konfigurieren, dass Debug.Fail beim Ausführen meiner Tests kein Meldungsfeld anzeigt?
public SubjectStatus Status
{
get { return status; }
set
{
if (Enum.IsDefined(typeof(SubjectStatus), value))
{
status = value;
}
else
{
Debug.Fail("Error setting Subject.Status", "There is no SubjectStatus enum constant defined for that value.");
return;
}
}
}
und diese Einheit Test
[Test]
public void StatusProperty_StatusAssignedValueWithoutEnumDefinition_StatusUnchanged()
{
Subject subject = new TestSubjectImp("1");
// assigned by casting from an int to a defined value
subject.Status = (SubjectStatus)2;
Assert.AreEqual(SubjectStatus.Completed, subject.Status);
// assigned by casting from an int to an undefined value
subject.Status = (SubjectStatus)100;
// no change to previous value
Assert.AreEqual(SubjectStatus.Completed, subject.Status);
}
Gibt es eine Möglichkeit, ich Debug.Fail Anzeigen eines Meldungsfeld verhindern kann, wenn ich meine Tests laufen, aber lassen Sie es zeigen, mir eine wenn ich meine Anwendung debugge?
Ich habe meine Antwort aktualisiert, um die Implementierung des Ablaufprotokoll-Listener-Plug-Ins für NUnit zu enthalten, wenn Sie interessiert sind. –
Großartig, genau die Art von Informationen, die ich suchte! – Grokodile