在过去我有了预期的异常检测是这样的:
[TestMethod]
public void TestThrowsException() {
try {
Foo();
Assert.Fail();
} catch (MyException ex){//good
}
}
然而我注意到有一个(清洁?)测试方法使用ExpectedException属性。为什么这个测试方法通过当异常抛出不是吗?当然这个失败的目的属性。
[TestMethod]
[ExpectedException(typeof(MyException))]
public void TestThrowsException() {
}
[编辑]我运行这个测试使用Silverlight 2