【问题标题】:DisconnectedContext error when running Unit Tests in debug in VS2015在 VS2015 的调试中运行单元测试时出现 DisconnectedContext 错误
【发布时间】:2015-11-21 12:51:47
【问题描述】:

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

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

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

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

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

更新 好的,所以 Resharper 导致了这个问题。此问题仅在我通过 ReSharper 图标(TestMethod 名称旁边)运行测试时发生。当我执行测试->调试->所有测试时,它运行良好。有任何想法吗?也许是 ReSharper 错误?

【问题讨论】:

    标签: visual-studio unit-testing resharper visual-studio-2015


    【解决方案1】:

    我在使用以下内容时收到了同样的错误:

    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)
    

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

          检查您是否将编译器设置为“发布”而不是“调试”。这为我解决了问题!

          【讨论】:

            【解决方案5】:

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

            【讨论】:

              【解决方案6】:

              这里有类似的问题。固定 - 我不知道如何: 从 Any CPU 将目标系统设置为 x64。 运行“调试所有测试”=> 没有找到任何测试。 (?) 尝试在我的空的第一个测试中手动运行调试,显然没有任何动作。 从 x64 回到 Any CPU。

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

              【讨论】:

              • 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post。 - From Review
              • @jogo:在我看来,这似乎是一种可能的解决方法......,它既不是批评也不是要求澄清。你读了吗?
              【解决方案7】:

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

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

              【讨论】:

                【解决方案8】:

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

                【讨论】:

                • 感谢分享,但这并没有解决我的问题:(。也许它可以帮助其他人。
                • 这为我修好了。Ty!
                • 为我修复。在 2015 x64 机器上找到,测试设置设置为 x86。
                • 当解决方案设置为发布而不是调试时,如果您正在运行测试调试,也会发生这种情况:-)
                • 没有直接为我工作。正如@BoMortensen 指出的那样,我一直在发布和调试模式之间切换。重新打开解决方案并进行了清理和重建。解决了!
                猜你喜欢
                • 1970-01-01
                • 2013-01-01
                • 2017-07-21
                • 1970-01-01
                • 2021-03-30
                • 1970-01-01
                • 2016-02-13
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多