在单元测试期间实例化MVC控制器时的VerificationException

时间:2012-11-09 13:46:45

标签: unit-testing asp.net-mvc-4 visual-studio-2012 microsoft-fakes

我正在使用Microsoft Fakes Framework进行一些单元测试,一切正常,直到我添加System.Web.Mvc假装配。从那一刻起,当我尝试在单元测试中初始化控制器时,会抛出VerificationException。当我删除Fake组件参考时,一切正常。但是,为了填充Action对象的UrlHelper方法,我需要这个假的。

我在SO上看到了一些链接,但它们主要是关于 FluentValidation ,这对我没有帮助。此外, Rich Czyzewski Noninvasive Unit Testing in ASP.NET MVC4 – A Microsoft Fakes Deep Dive的优秀文章没有帮助,因为我完全不知道他是如何设法实例化UrlHelper的。我按照他显示的相同示例,但UrlHelper构造函数也抛出VerificationException

除了Rich的存根,我还添加了HttpResponseBaseHttpSessionBase等,以创建类似的方案,可以在 Scott Hanselman 的博客{{{ 3}},但仍然没有运气。

有没有人设法解决这个问题以及如何解决?

先感谢大家!

1 个答案:

答案 0 :(得分:-1)

这是Visual Studio 2012 RTM版本附带的Fakes版本的限制。我们已经在即将到来的季度更新2中修复了它,CTP将在几周内下载。