我刚刚开始调查鼹鼠框架,从开始就没有真正好的经验。 由于某种原因,我不能为System.Web.Mvc.dll(v.3)
生成痣我将尝试逐步解释我的问题
在第4步中,我收到以下错误
------ Build started: Project: SampleMvcApplication.UnitTests, Configuration: Debug Any CPU ------
Microsoft Moles v0.94.51023.0 - http://research.microsoft.com/moles - .NET v4.0.30319
Copyright (c) Microsoft Corporation 2007-2010. All rights reserved.
00:00:00.00> moles
Moles : info : metadata : ignoring reference D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication.UnitTests\MolesAssemblies\System.Behaviors.dll
Moles : info : metadata : ignoring reference D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication.UnitTests\MolesAssemblies\System.Moles.dll
Moles : info : metadata : ignoring reference D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication.UnitTests\MolesAssemblies\System.Web.WebPages.Moles.dll
Moles : info : configuration : diagnostic is on
Moles : info : metadata : loading C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll
Moles : info : compilation : output assembly name: System.Web.Mvc.Moles
Moles : warning : metadata : failed to load module System.Web.Mvc.dll:
Moles : warning : metadata : Inheritance security rules violated by type: 'System.Web.Mvc.CompareAttribute'. Derived types must either match the security accessibility of the base type or be less accessible.
Moles : warning : metadata : Inheritance security rules violated by type: 'System.Web.Mvc.RemoteAttribute'. Derived types must either match the security accessibility of the base type or be less accessible.
Moles : error : code : assembly contains no types or failed to load properly
00:00:00.20> moles generator 1 errors, 3 warnings
C:\Program Files (x86)\Microsoft Moles\bin\Microsoft.Moles.targets(79,5): error MSB3073: The command ""C:\Program Files (x86)\Microsoft Moles\bin\moles.exe" @D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication.UnitTests\obj\Debug\Moles\moles.args" exited with code -1005.
------ Build started: Project: SampleMvcApplication, Configuration: Debug Any CPU ------
Microsoft Moles v0.94.51023.0 - http://research.microsoft.com/moles - .NET v4.0.30319
Copyright (c) Microsoft Corporation 2007-2010. All rights reserved.
00:00:00.00> moles
Moles : info : metadata : loading C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies\System.Web.WebPages.dll
Moles : info : compilation : output assembly name: System.Web.WebPages.Moles
Moles : info : code : found 71 types
Moles : info : code : visibility: exported or assembly(System.Web.WebPages.Moles)
00:00:00.34> code generation
Moles : info : code : generating code at D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication\obj\Debug\Moles\swwp\m.g.cs
00:00:00.46> stubs generation
Moles : info : code : generated 23 stub types
00:00:00.86> moles generation
Moles : info : code : generated 33 mole types
00:00:01.70> compiling
Moles : info : compilation : Moles assembly: D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication\MolesAssemblies\System.Web.WebPages.Moles.dll
00:00:02.43> moles generator 0 errors, 0 warnings
SampleMvcApplication -> D:\Samples\Moles\SampleMVC\SampleMvcApplication\SampleMvcApplication\bin\SampleMvcApplication.dll
========== Build: 1 succeeded or up-to-date, 1 failed, 0 skipped ==========
我调查了所有我发现的主题,但没有任何帮助(我甚至没有找到一些关于这个问题的好答案和解释。)
这也没有帮助(解决方案不包括有问题的类型) Cannot use moles to mock the MVC framework
请指教。 感谢。
答案 0 :(得分:0)
您使用的是单元测试吗?如果是,请检查您的单元测试中是否有MVC 3 dll参考。
答案 1 :(得分:0)
您不必直接添加对moles框架的引用。创建测试项目并添加对正在测试的项目的引用后,右键单击该引用并选择Add Moles Assembly。这应该在测试项目的根目录中创建一个.moles文件。现在建立你的测试项目,你很高兴!