Xcode 7 - 代码覆盖率数据生成失败

Bar*_*zyk 55 xcode ios swift ios9

当我运行我的测试时,我收到一个错误:

代码覆盖率数据生成失败.
无法从"UIDevice"检索配置文件数据文件.

在此输入图像描述

在控制台上打印警告:

模拟器启动等待120秒,当前状态为1.

是什么原因?

Cru*_*inh 15

如果要将项目与第三方动态框架集成,则可能需要在构建设置中添加路径.查找 - >构建设置 - >"运行路径搜索路径"并确保它包含框架的路径.

在设置我的项目以使用我的团队一直在研究的框架之后,我自己才看到这个问题.更新此特定设置后,问题就消失了.在我的例子中,路径与我已经为"框架搜索路径"设置设置的路径相同.


Mar*_*Him 12

我解决了这个问题,就像我解决了大多数XCode问题一样:

  1. 删除你的项目文件DerivedData(Xcode>Preferences>Locations>DerivedData?在finder中跳转)
  2. Product>Clean
  3. (保持按下alt按钮) Product>Clean Build Folder
  4. 退出XCode
  5. 重启XCode
  6. 从您的设备/模拟器中删除您的应用程序

再试一次.如果它仍然无法工作,请使用另一个模拟器/设备进行几次运行.迟早它会再次在原来的那个上再次运作.


Nun*_*ves 8

如果您正在使用可可豆荚,请在Cocoapods存储库中查看此主题:https: //github.com/CocoaPods/CocoaPods/issues/5385#issuecomment-226269847

这解决了我的问题:

复制@dfleming响应:

出于某种原因,在生成项目工作区时,CocoaPods似乎没有将"[CP]嵌入窗格框架"构建阶段添加到UI测试目标.

我手动添加了这个,并且UI测试再次可以运行.

此构建阶段应运行以下脚本:(将{YourProject}替换为您的项目名称)

"${SRCROOT}/Pods/Target Support Files/Pods-{YourProject}UITests/Pods-{YourProject}UITests-frameworks.sh"


dan*_*ham 5

我经历了完全相同的错误并最终使其正常工作,这些是我采取的步骤.

  1. 在清理和删除应用程序之后尝试重新启动Xcode和模拟器,这从未起作用.

  2. 然后我按照建议重新启动了Mac,但仍然没有用.

  3. 然后我选择了一个新设备在模拟器中进行测试,以前使用5s并切换到6,这样就可以了.

有趣的是,当我切换到iPhone 6模拟器时,在运行应用程序和工作之前,它显示带有加载栏的Apple徽标.

当切换回5s模拟器时,它完全相同,使用Apple装载杆,它之前没有完成,然后5s工作.

所以它看起来是一个模拟器问题,并切换到另一个设备工作.重置内容和设置可能是非工作设备的解决方案.

  • 哦,我再次搜索这个问题,我看到了我的评论.这次我正在测试一个mac应用程序,所以我无需更改设备.如果我禁用它编译的覆盖范围但不执行测试. (2认同)

rho*_*mes 0

根本原因可能是模拟器故障。模拟器的问题很常见,尤其是在首次启动时。

如果即使在成功启动并连接模拟器后仍然出现问题,请发布错误的详细信息。

为了启动模拟器,我经常必须取消第一次运行(在干净地启动 Xcode 之后),然后尝试重新运行几次。

如果这种情况是可重复的,发生在多个项目上,并且在重新启动和清理项目后仍然存在,如果 Stack Overflow 社区无法提供帮助,请考虑向 Apple 提交缺陷。