9

所以 Xcode 7 中的热门新特性是集成在 XCode 中的代码覆盖 - 耶!有了这个新功能,Apple 的新代码覆盖格式也随之而来.profdata

我们需要在 Cobertura 报告(在 Jenkins 中加载)中显示代码覆盖率报告。目前没有办法转换.profdata为 Cobertura XML 报告(不过它正在开发中)。

在那之前,我们需要依赖“旧”的 gcov。由于某些未知原因,XCode 7 生成 .gcno 和 .gcda,但是当您gcovr创建 Cobertura 报告时,它显示所有文件的覆盖率为 0%(我们肯定有一些覆盖率)。

我们尝试回到 XCode 6.4,生成的 gcov 文件在运行时显示正确的覆盖率gcovr

有没有人遇到同样的问题?任何可能的解决方案?

4

2 回答 2

0

gcovr应该从 .gcda 和 .gcno 文件所在的文件夹中执行。根路径是源文件(.c 或 .cpp)所在的文件夹。

有了这个,命令看起来如下所示。

rr-mac:gcdaFolder$ gcovr -r /path_to_C_sourceFiles/ .

对于以下命令有效的输出 html 文件

rr-mac:gcdaFolder$ gcovr --html -o Filename_rp.html -r /path_to_C_sourceFiles/ .

注意:最后的点(。)是强制性的

于 2016-08-12T12:57:13.433 回答
-1

在目标的构建设置中设置下一个值:

Generate Legacy Test Coverage Data = YES
Instrument Program Flow = YES
Enable Code Coverage Support = NO
于 2016-03-29T11:48:56.917 回答