我使用Visual Studio单元测试框架的情况非常奇怪。装饰为[TestMethod, ExpectedException(typeof(InvalidOperationException))]
的测试失败与System.InvalidOperationException
。ExpectedException属性不起作用
如果我从测试中删除所有代码(以确保它不会抛出任何东西) - 它会通过。这就好像ExpectedException
甚至没有...
如果我开始一个虚拟测试的空项目,只会抛出InvalidOperationException
它完全按预期工作。
已验证,ExpectedExceptionAttribute
和InvalidOperationException
都未被覆盖。不知道还有什么尝试在这里...
编辑:通过去除参考Microsoft.VisualStudio.QualityTools.UnitTestFramework
10.1和10.0版本中加入解决了这一问题。 不知道为什么这个问题或为什么其他属性工作得很好。
如果你的问题的项目,您从测试中删除所有的代码,只需添加一行抛出InvalidOperationException异常,是否按预期方式工作(即通过即使它抛出例外?) – 2013-04-11 21:50:19
@MattSmith不,测试失败。 – 2013-04-11 21:51:20
有趣的问题,很好找。 – Eogcloud 2013-06-25 07:41:51