【问题标题】:"Message from debugger: unable to attach" when running Tests on OSX app在 OSX 应用程序上运行测试时“来自调试器的消息:无法附加”
【发布时间】:2017-05-27 13:30:45
【问题描述】:

我无法在我的 OSX 应用程序上运行我的测试 - 项目构建良好,但是当我在 Xcode 8.2 中运行 Product -> 测试时。它说 : Message from debugger: unable to attach

如何让我的测试再次运行?

【问题讨论】:

    标签: swift xcode macos xctest


    【解决方案1】:

    为我解决问题的是在测试目标上启用签名。 您需要转到项目的设置,转到您的目标,一般来说,在测试下,您有 Signing 部分。点击大按钮“启用签名”(或类似的东西)。您可能需要处理配置文件,但对我而言并非如此。

    【讨论】:

    • 我想我太相信这是一个 Xcode 错误,以至于没有注意我有时会收到的“签名失败”警报。 =P 谢谢!
    • 没有提醒我,但这解决了它
    【解决方案2】:

    我最终需要使用这些整理好的步骤来“repot”我的 Xcode 项目。 https://medium.com/@mobilebloke/xcode-8-going-slow-on-swift-3-have-you-tried-repotting-your-project-88d0066d2445#.idcdv2dd3

    我知道这不一定是修复,但在尝试之后:

    • 添加删除证书

    • 重新创建配置文件

    • 删除并重新添加不起作用的目标...

      这至少让我可以继续

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题,但对于常规应用程序。出于某种原因,我的应用程序被沙盒化了。您可以检查它选择您的项目/目标(您的应用程序),然后选择功能,就像在这个屏幕截图中一样(来自 Xcode 10 beta 4,但这个概念应该适用于旧版本的 Xcode):

      应用沙盒已开启。这还创建了一个文件“RSSReaderMac.entitlements”。我可能搞砸了试图让应用程序保持沙盒状态只是为了了解它是如何工作的。我禁用了 App Sandbox,删除了权利文件,然后我的应用又开始运行了。

      确实,真正的原因是我的应用程序实际上崩溃了,并出现以下错误消息:

      Exception Type:        EXC_CRASH (Code Signature Invalid)
      Exception Codes:       0x0000000000000000, 0x0000000000000000
      Exception Note:        EXC_CORPSE_NOTIFY
      

      我想再次启用沙盒会重新创建权利文件。否则,另一种选择可能是首先检查并清理该文件。但我没有测试它。

      【讨论】:

        【解决方案4】:

        我的错误是我试图在 [app name].entitlements 文件中手动添加一项权利。删除添加的条目解决了问题,您可能有一个损坏的...权利文件。

        【讨论】:

          猜你喜欢
          • 2017-11-17
          • 2021-05-17
          • 1970-01-01
          • 2016-01-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-05-07
          相关资源
          最近更新 更多