无法 运行 使用 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 打开后出现的,其中一位管理员修复了问题
我的问题与此处报告的问题非常相似: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 打开后出现的,其中一位管理员修复了问题