我有一个单元测试失败,因为 System.ArgumentException
被抛出,尽管我期待它并且它是故意的行为 - 我错过了什么?
[Test]
[ExpectedException(typeof(ArgumentException), ExpectedMessage = "Seconds from midnight cannot be more than 86400 in 010100712386401000000012")]
public void TestParsingCustomReferenceWithInValidSecondsFromMidnight()
{
// I am expecting this method to throw an ArgumentException:
CustomReference.Parse("010100712386401000000012");
}
我也尝试过不设置 ExpectedMessage
- 没有区别。
最佳答案
你试过断言语法吗?
Assert.Throws<ArgumentException>(
() => CustomReference.Parse("010100712386401000000012"),
"Seconds from midnight cannot be more than 86400 in 010100712386401000000012"
);
关于c# - NUnit 单元测试有 "ExpectedException"但仍然因异常而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1928079/