我将通过指出"ExpectedException"属性糟透了,添加到Jared所说的内容中.没有办法断言异常的消息是正确的("消息"参数不会做你认为它做的事情)并且你不能在一次测试中检查多个异常.
更好的解决方案是做这样的事情:http: //geekswithblogs.net/sdorman/archive/2009/01/17/unit-testing-and-expected-exceptions.aspx
那个班让你做这样的好事:
[TestMethod] public void TestAFewObviousExceptions() { // some setup here ExceptionAssert.Throws("Category 47 does not exist", () => wallet.Categories.GetChildCategoryIds(47)); ExceptionAssert.Throws("Id Flim is not valid", () => wallet.Categories.IdFromName("Flim")); }