5

在使用带有标志 --coverage 的 CMake 编译并运行我的 boost 单元测试程序后,将创建扩展名为 .cpp.gcda 和 .cpp.gcno 的文件。如果我然后运行 ​​gcovr 它声称它找不到 .gcno 文件(错误消息“.gcno:无法打开图形文件”)。我可能会移动所有输出文件,但这真的很尴尬/愚蠢。

其他人的相关问题可以通过使用 CTest 来解决,但是当我使用 Jenkins 时,我想坚持使用 gcovr 并使用 cobertura xml 输出。

附言。也许我应该简单地问:我应该如何将 CMake 与 gcovr 结合起来?

4

1 回答 1

1

这是我们在 jenkins 中用于相同设置的解决方案:http ://www.semipol.de/archives/320 。您可以出于自己的目的从链接的 RSC 库中获取 CMake 宏。

除此之外,阅读有关最近 gcc 版本中覆盖文件格式略有变化的内容,似乎 gcovr 没有跟上这一点。但我不记得我在哪里读到的。

于 2013-04-30T13:55:34.770 回答