运行 在 VS2015 中调试单元测试时出现 DisconnectedContext 错误

DisconnectedContext error when running Unit Tests in debug in VS2015

我在 VS2015 Enterprise 中使用 运行ning 单元测试时遇到了这个问题。每当我 运行 在调试模式下进行任何单元测试时,我都会收到以下错误:

托管调试助手 'DisconnectedContext' 在 'my_path_to_VS\COMMON7\IDE\COMMONEXTENSIONS\MICROSOFT\TESTWINDOW\te.processhost.managed.exe' 中检测到问题。

我在 VS2015 上尝试 运行ning 修复,但没有帮助。尝试卸载并重新安装,问题依然存在。奇怪的是,我在 SVN 上有一个代码,而我的朋友能够 运行 在他的机器上调试相同的代码而没有任何问题。

只需 运行测试(没有调试器)就可以正常工作。

我确实安装了 ReSharper。这会导致这个问题吗?

更新 好的,Resharper 导致了这个问题。只有当我 运行 通过 ReSharper 图标(在 TestMethod 名称旁边)进行测试时才会发生此问题。当我执行 Test->Debug->All Tests 时,它 运行 没问题。有任何想法吗?也许是 ReSharper 错误?

我也有 Rashaper 并面临这个问题,无论我从哪里调用测试(VS 或 Resharper)。我通过将测试和项目的目标架构更改为 x64 来克服这个问题。但是问题的根源对我来说仍然是未知的。

我在 Visual Studio 2015 年调试 WCF 服务时遇到此异常。没有使用 ReSharper。按照 shfire 的建议将默认架构更改为 X64 为我修复了它。

因为我的项目是迁移的Visual Studio 2012 项目我将默认处理器架构与VS2012 中的设置进行了比较。在 VS2012 中,默认架构未被选择或可选择!我认为这是 VS2015 的一个新错误 and/or 功能 ;-)

这里有类似的问题。修复它我不知道如何: 将目标系统设置为 Any CPU 中的 x64。 运行 "debug all tests" => 未找到任何测试。 (?) 尝试在我空的第一个测试中手动 运行 调试,显然没有任何动作。 从 x64 回到 Any CPU.

现在可以了...希望对您有所帮助。

如果您在 VS2015 中安装了 CodeRush for Roslyn Preview 扩展,也会发生此异常。此扩展具有一些用于单元测试的功能,因此这对于扩展到 Visual Studio 中的单元测试的所有扩展来说似乎很常见。可以通过卸载(而不是禁用)这个扩展来解决。

检查您是否将编译器设置为 "Release" 而不是 "Debug"。这为我解决了问题!

我遇到了类似的问题,我的单元测试在新进程中使用了外部应用程序 运行。我 运行 visual studio 在管理员模式下,它解决了问题。

我在进行普通调试时遇到了这个问题(使用 Visual Studio 2015,Windows Forms 应用程序,这是第一个使用 Visual Studio 早期版本创建的项目).偶尔会发生。

我认为这可能与项目的调试属性页面中的 Enable the Visual Studio hosting process 有关,即我希望禁用该选项可以防止出现此问题。

我在使用以下命令时遇到了同样的错误:

System.Threading.Tasks.Task.Factory.StartNew(
  Sub()
    Do
        Me.BeginInvoke(Sub()
           TimeTextBox.Text = Now.ToString("HH:mm:ss")                                               
                       End Sub)
        ' thread not a problem
        System.Threading.Thread.Sleep(1500)
        ' Task delay fail with disconnection
        'System.Threading.Tasks.Task.Delay(1500)
    Loop While isrunning
  End Sub)