当工作区使用自定义XCODE_CONFIGURATION_BUILD_DIR构建时,我无法生成代码覆盖率数据。
我们运行xcodebuild命令来构建带有XCODE_CONFIGURATION_BUILD_DIR的工作区,这样多个jenkins CI作业就不会覆盖同时运行的其他作业的构建输出。
当我们为以这种方式生成的构建运行测试并尝试获取代码覆盖率报告时,该命令会失败,并显示以下错误。
jenkins$ xcrun xccov视图*.xccovreport
Errors: Error /Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX- Domain=IDEFoundationErrorDomain Code=14“无法将目录/Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX-buggtqumttnpjvejnbfhulhqcvno/Build/ProfileData/bff950eda0f75b2dbadb3ce08510474b4667ac82中的原始配置文件合并到目标/Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX-buggtqumttnpjvejnbfhulhqcvno/Build/ProfileData/bff950eda0f75b2dbadb3ce08510474b4667ac82/Coverage.profdata:没有配置文件数据文件写入'/Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX-buggtqumttnpjvejnbfhulhqcvno/Build/ProfileData/bff950eda0f75b2dbadb3ce08510474b4667ac82'”UserInfo={用于合并目录/Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX-中的原始配置文件的NSLocalizedDescription=Failed目标/Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX-buggtqumttnpjvejnbfhulhqcvno/Build/ProfileData/bff950eda0f75b2dbadb3ce08510474b4667ac82/Coverage.profdata:的buggtqumttnpjvejnbfhulhqcvno/Build/ProfileData/bff950eda0f75b2dbadb3ce08510474b4667ac82未将配置文件数据文件写入'/Users/jenkins/Library/Developer/Xcode/DerivedData/XXXXXX-buggtqumttnpjvejnbfhulhqcvno/Build/ProfileData/bff950eda0f75b2dbadb3ce08510474b4667ac82'}
版本/内部版本:版本10.1 (10B61)
发布于 2019-05-18 01:22:43
在Github上找到此线程
问题是:为Static Library生成覆盖失败,但对Dynamic Library没有。
所以检查它是否工作,在pbxproj上进行更改:
- MACH_O_TYPE = staticlib;
+ MACH_O_TYPE = mh_dylib;

在我的示例框架上,它确实成功地生成了覆盖范围。
https://stackoverflow.com/questions/54431197
复制相似问题