【问题标题】:How to get rid of this Error Generating Code Coverage in Xcode 9.4如何在 Xcode 9.4 中消除此错误生成代码覆盖率
【发布时间】:2018-07-06 11:57:48
【问题描述】:

当我尝试运行我的 UI 测试时,我不断看到此弹出“错误生成代码覆盖率”,然后是另一个错误包标识符丢失。我在测试方案中启用了代码覆盖率。我真的很期待在没有这个阻塞错误的情况下运行我的 UI 测试。

【问题讨论】:

    标签: code-coverage xcode-ui-testing xcode9.4


    【解决方案1】:

    Apple 有一个问题已在 Xcode 9 的公开雷达下提交,而 XCode 10 解决了这个问题

    一种可能的解决方案是:

    • 移至 Xcode 10 并在构建设置中启用代码覆盖率。

    • 另外,在您的测试方案中,通过进入测试操作并检查 “启用代码覆盖率复选框”以收集覆盖率数据(如您在问题图片中看到的那样)

    【讨论】:

      【解决方案2】:

      我暂时解决了这个问题,但不确定它是否是正确的解决方案。

      每次我需要清理项目时

      Xcode -> 首选项 -> 派生数据(删除此文件夹)

      构建项目,然后运行测试。

      【讨论】:

        【解决方案3】:

        在使用 iOS

        【讨论】:

          【解决方案4】:

          我曾经在下一个错误日志中遇到过类似的问题:

          14:35:45.129 Xcode[83419:1712361] _finishWithError:Error Domain=IDETestOperationsObserverErrorDomain Code=5 "启动会话 签入前已过期。” UserInfo={NSLocalizedDescription=Launch 签入前会话已过期。}

          通过向单元测试目标添加缺少的框架来解决它:

          • 将构建的框架拖到测试目标的链接二进制构建阶段。
          • 在 Build Settings 选项卡下的 Test 目标中,将 @loader_path/Frameworks 添加到 Runpath Search Paths(如果它尚不存在)。
          • 确保测试包中存在依赖项。使用 Frameworks 目标创建一个新的 Copy Files 构建阶段,然后在那里添加框架引用。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2016-10-28
            • 1970-01-01
            • 2016-11-29
            • 2012-11-01
            • 2016-10-15
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多