首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode UI测试:Xcode构建无法在xcode12上生成xcode12,失败时出现错误“error : No可以合并”。

Xcode UI测试:Xcode构建无法在xcode12上生成xcode12,失败时出现错误“error : No可以合并”。
EN

Stack Overflow用户
提问于 2021-03-16 10:42:25
回答 1查看 999关注 0票数 0

以下是我们面对问题时的设置方式。

  • 我们有一个项目,它有UI和单元测试。
  • 用快车道。
  • 使用Jenkins实现CI/CD,它运行在aws ec2实例上。
  • 最近我们搬到了Xcode12 (我知道!)然而,迟到总比没有好)

问题陈述:

转到xcode12之后,jenkins管道无法生成Coverage.profdata文件,而Slather将使用该文件来派生代码覆盖率指标。是的,在运行xcode11时没有发生。

在将其指向适当的命令行工具版本(在本例中为12.4)之后,我们将使用xcodebuild命令。

首先,我们使用(在获得模拟器ID之后)构建应用程序。

代码语言:javascript
复制
xcodebuild build-for-testing -workspace Example.xcworkspace -scheme ExampleUITests -derivedDataPath ./derivedData -destination 'platform=iOS Simulator,id=<simulator_id>'

然后,我们使用

代码语言:javascript
复制
xcodebuild test-without-building -workspace Example.xcworkspace -scheme ExampleUITests -enableCodeCoverage YES -destination 'platform=iOS Simulator,id=<simulator_id>' -derivedDataPath ./derivedData

所有UI测试都成功运行,但在测试套件完成时,最终得到以下语句。

代码语言:javascript
复制
warning: <Path_to_derived_data>/Build/ProfileData/<Some_UUID>/<Filename>.profraw: Invalid instrumentation profile data (file header is corrupt)
error: No profiles could be merged.

在我的本地机器上没有发生这种事。仅在Jenkins ec2实例中的mac上。

EN

回答 1

Stack Overflow用户

发布于 2021-03-16 11:31:37

我们面临着一个类似的问题。我们还用了fastlane。

对我们起作用的修复方法是确保我们从以前的构建中删除任何工件。你所描述的情况与我们所面临的情况非常相似。单元测试的第一次运行会生成一些覆盖工件,然后执行UI测试也会生成覆盖工件,然后xcov/slather无法解析这些工件。

因此,能否检查删除派生数据中的Logs/Test文件夹是否有帮助?如果没有尝试完全清除派生数据,然后检查这是否有助于解决CI上的问题。

相关螺纹 关于xcov

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66653603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档