2

使用最新的 Xcode,我们现在可以查看本地构建或集成的代码覆盖率。我想导出覆盖结果来构建对这些数据的一些分析。

项目https://github.com/jonreid/XcodeCoverage似乎是一种将报告数据导出为 xml 或 html 的简单方法,我可以用它来构建其他东西。但我遇到了一些困难。

设置相当简单。

  1. 从存储库中拉取。
  2. 在我的项目中添加 XcodeCovearage。
  3. 添加构建阶段脚本以运行 exporting.sh
  4. 运行我的测试。
  5. 执行 getcov 查看数据。

当我运行 getcov 时,我得到以下输出:

~/Library/Developer/Xcode/DerivedData/Garage-emxrmloetsurmcgqiahicyecarix/Build/Intermediates/CodeCoverage/Garage/Products/Debug-iphonesimulator /Workspace/ios/Garage/XcodeCoverage
/Workspace/ios/Garage/XcodeCoverage
Capturing coverage data from /Users/Seamus/Library/Developer/Xcode/DerivedData/Garage-emxrmloetsurmcgqiahicyecarix/Build/Intermediates/CodeCoverage/Garage/Intermediates/Garage.build/Debug-iphonesimulator/Garage.build/Objects-normal/x86_64
geninfo: Use of uninitialized value $version_string in substitution (s///) at /Workspace/ios/Garage/XcodeCoverage/lcov-1.11/bin/geninfo line 1914.
geninfo: Use of uninitialized value $version_string in pattern match (m//) at /Workspace/ios/Garage/XcodeCoverage/lcov-1.11/bin/geninfo line 1917.
geninfo: Use of uninitialized value $version_string in pattern match (m//) at /Workspace/ios/Garage/XcodeCoverage/lcov-1.11/bin/geninfo line 1930.
geninfo: Use of uninitialized value $gcov_version_string in pattern match (m//) at /Workspace/ios/Garage/XcodeCoverage/lcov-1.11/bin/geninfo line 3720.
geninfo: Use of uninitialized value $gcov_version_string in pattern match (m//) at /Workspace/ios/Garage/XcodeCoverage/lcov-1.11/bin/geninfo line 3720.
Scanning /Users/Seamus/Library/Developer/Xcode/DerivedData/Garage-emxrmloetsurmcgqiahicyecarix/Build/Intermediates/CodeCoverage/Garage/Intermediates/Garage.build/Debug-iphonesimulator/Garage.build/Objects-normal/x86_64 for .da files ...
geninfo: WARNING: no .da files found in /Users/Seamus/Library/Developer/Xcode/DerivedData/Garage-emxrmloetsurmcgqiahicyecarix/Build/Intermediates/CodeCoverage/Garage/Intermediates/Garage.build/Debug-iphonesimulator/Garage.build/Objects-normal/x86_64 - skipping!
Finished .info-file creation
Reading tracefile Coverage.info
lcov: ERROR: no valid records found in tracefile Coverage.info
Reading tracefile Coverage.info
lcov: ERROR: no valid records found in tracefile Coverage.info
Reading data file Coverage.info
genhtml: ERROR: no valid records found in trace file Coverage.info

似乎缺少有关 lcov 或 getcov 脚本版本的一些信息,并且无法构建 coverage.info

有没有人尝试使用 Xcode7

有人知道从 Xcode 导出覆盖数据的其他有用工具吗?

谢谢,

4

1 回答 1

-1

这是lcov的问题。您只需要将 lcov 版本更新到 1.12 并在代码覆盖中替换

于 2015-10-15T02:11:20.580 回答