0

当我尝试使用单元测试(微软Visual Studio 2010的嵌入式测试框架)与MVC3,所有的单元测试实例化一个控制器抛出以下错误:无法实例控制器在测试

Test method CleanTestMVC.Tests.Controllers.HomeControllerTest.About threw exception: 
System.Security.VerificationException: Operation could destabilize the runtime. 

这似乎是不特定于项目:我已经创建了一个新的MVC3项目,其中包含一个互联网应用程序模板以及默认的自动生成的测试,并且这些测试也不会运行。我试图在同事的机器上重新创建问题(相同的设置),他的机器似乎会产生相同的问题。

没有引用或外部库加入这些项目,但两台计算机都安装了TypeMock,虽然没有提及,并在选项禁用(我听到人们指责它类似的问题)。

有谁请提出好的建议?解决方法和/或潜在的原因?这是我第一次使用MVC3单元测试,没有人周围曾经有MVC3工作,这是它的一个“豚鼠”的项目。

感谢您的帮助!

更新:在我的家用电脑上试过后,即使我也安装了TypeMock(试用版),但所有功能都可以正常使用。

更新2:对于该问题的堆栈跟踪: System.Web.Mvc.Controller..ctor() CleanTestMVC.Controllers.HomeController..ctor() CleanTestMVC.Tests.Controllers.HomeControllerTest.About ()

+0

我不知道答案,但我会好奇地看到,调用堆栈。 –

+0

明天我会去上班 –

回答

2

好了,所以在它原来,该公司已安装了旧版本Typemock的,这与MVC3不相容结束。通过Typemock-禁用Typemock>禁用Typemock实际上并没有“完全”禁用它,它必须是在取消选中“工具/加载项管理器”。将Typemock更新到最新版本后,问题就解决了。

相关问题