Unit testing 使用emulator进行.NET CF单元测试-测试运行错误

Unit testing 使用emulator进行.NET CF单元测试-测试运行错误,unit-testing,compact-framework,Unit Testing,Compact Framework,测试运行错误: 无法加载执行此测试所需的测试适配器(“Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestAdapter,Microsoft.VisualStudio.QualityTools.Tips.UnitTest.adapter,版本=9.0.0.0,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a”)。检查测试适配器是否正确安装。错误:智能设备主机适配器初始化失败 实际情况: 已知问题“辅助线程中的

测试运行错误:

无法加载执行此测试所需的测试适配器(“Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestAdapter,Microsoft.VisualStudio.QualityTools.Tips.UnitTest.adapter,版本=9.0.0.0,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a”)。检查测试适配器是否正确安装。错误:智能设备主机适配器初始化失败

实际情况: 已知问题“辅助线程中的单元测试异常会杀死vstesthost”

已通过添加到解决 C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\VSTestHost.exe.config

以下一行:

Microsoft.VisualStudio.SmartDevice.UnitTestFramework.dll已添加到GAC:

“C:\Program Files\Microsoft SDK\Windows\v6.0A\bin\gacutil.exe”-i“C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblys\Microsoft.VisualStudio.SmartDevice.UnitTestFramework.dll”

但我仍然收到错误消息,无法在emulator上运行单元测试

或者这可能是Visual Studio 2008尚未解决的问题,我应该尝试其他工具/可能性

System.IO.FileNotFoundException未处理

系统找不到文件

Source=“设备连接管理器” 堆栈跟踪: 在Microsoft.VisualStudio.DeviceConnection.Interop.ConManServerClass.DownloadPackage(字符串pwszPackageId)中 位于Microsoft.SmartDevice.Connectivity.FileDeployer.DownloadPackage(ObjectId packageId) 在Microsoft.VisualStudio.SmartDevice.TestHostAdapter.DeviceAgent.RunConfigDevice.InitializeStreamingWithDevice()上 在Microsoft.VisualStudio.SmartDevice.TestHostAdapter.DeviceAgent.DeviceHostAdapter.initializeInternal()中 位于System.Threading.ThreadHelper.ThreadStart\u上下文(对象状态) 在System.Threading.ExecutionContext.Run(ExecutionContext ExecutionContext,ContextCallback回调,对象状态) 位于System.Threading.ThreadHelper.ThreadStart()处 内部异常:


如果您刚刚为移动设备安装了SDK,它可能安装了一个尚未初始化的框架。尝试重新启动

如果已安装多个移动SDK(WM5、WM6.1、WM6.3.5等),请确保您的项目正在尝试启动目标版本

如果所有其他操作都失败,您可以尝试卸载仿真器,重新启动(因为我们喜欢Windows),再次安装,重新启动(因为它仍然是Windows),然后返回您的项目。

我在这里找到了答案:

也许不是最优雅的解决方案,但我只是将SmartDevice.UnitTestFramework.dll及其xml配置文件从VS 2008公共程序集文件夹复制到VS 2010公共程序集文件夹,它对我很有用

在我的机器上,这些文件夹是VS2008的

C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblies
以及VS2010

 C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies
我收到两条错误信息。vstesthost.exe崩溃,详细信息中给出了以下行

vstesthost.exe
Microsoft.SmartDevice.Connectivity
System.IO.FileNotFoundException
或者单元测试框架抛出此异常

"The system cannot find the file specified.\r\n"
"Device Connection Manager"
at Microsoft.VisualStudio.DeviceConnectivity.Interop.ConManServerClass.DownloadPackage(String pwszPackageId)
at Microsoft.SmartDevice.Connectivity.FileDeployer.DownloadPackage(ObjectId packageId)
at Microsoft.VisualStudio.SmartDevice.TestHostAdapter.DeviceAgent.RunConfigDevice.InitializeStreamingWithDevice()
at Microsoft.VisualStudio.SmartDevice.TestHostAdapter.DeviceAgent.DeviceHostAdapter.initializeInternal()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()

在尝试运行测试之前,您是否在模拟器上安装了CF 3.5?我现在使用NUnitLite。因为我们仍然非常喜欢窗户。