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更新到最新版本後,問題就解決了。

相關問題