无法 运行 使用 Microsoft Fakes 的单元测试 - ShimsContext.Create() 方法中的异常

Unable to run Unit Tests that uses Microsoft Fakes - Exception in ShimsContext.Create() Method

我的问题与此处报告的问题非常相似:UnitTestIsolationException when debugging tests using Fakes

但是,我什至无法 运行 进行测试。使用此处提供的示例代码:Isolating Code Under Test with Microsoft Fakes(Shims 入门),我在 运行ning 下面的测试中得到以下异常:

违规行是:

using (ShimsContext.Create())

运行测试异常:

Test Name: TestMethod1
Test FullName: TestingShimsAndStubs.UnitTest1.TestMethod1
Test Source: c:\poc\TestingShimsAndStubs\TestingShimsAndStubs\UnitTest1.cs : line 12
Test Outcome: Failed
Test Duration: 0:00:00.0182403

结果消息:

Test method TestingShimsAndStubs.UnitTest1.TestMethod1 threw exception: Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationException: Failed to get profiler module handle 'C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\IntelliTrace.0.0\Microsoft.IntelliTrace.Profiler.12.0.0.dll'. The specified module could not be found ---> System.ComponentModel.Win32Exception: The specified module could not be found Result StackTrace: at Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.LibraryMethods.GetModuleHandle(String fileName) at Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.IntelliTraceInstrumentationProvider.LoadProfilerModule(String profilerPath) --- End of inner exception stack trace --- at Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.IntelliTraceInstrumentationProvider.LoadProfilerModule(String profilerPath) at Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.IntelliTraceInstrumentationProvider.Initialize() at Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationRuntime.InitializeUnitTestIsolationInstrumentationProvider() at Microsoft.QualityTools.Testing.Fakes.Shims.ShimRuntime.CreateContext() at Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create() at TestingShimsAndStubs.UnitTest1.TestMethod1() in c:\poc\TestingShimsAndStubs\TestingShimsAndStubs\UnitTest1.cs:line 16

我在我的机器上使用 Microsoft Visual Studio Ultimate 2013 Edition(版本 12.0.40629.00 更新 5)和 .Net Framework v 4.6.01055。还尝试 运行在 Visual Studio 2015 企业版上进行测试

我不确定 VS2013/VS2015 发生了什么,但以管理员身份打开它(开始 -> 右键单击​​ Visual Studio 2013 -> 运行 以管理员身份),然后打开测试项目问题似乎已经解决了!!!

可能有一些公司政策阻止我的普通用户帐户访问该文件夹。模拟管理员帐户似乎已经解决了这个问题。非常感谢修复它!

解决方案是在 post 此处 Unable to run Unit Tests that uses Microsoft Fakes 打开后出现的,其中一位管理员修复了问题