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

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

附言也许我应该问一下:我该如何将CMake与gcovr结合使用?

最佳答案

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

除此之外,还阅读了一些有关最新gcc版本中coverage文件格式稍有更改的内容,看来gcovr跟不上这个。但是我不记得我在哪里读这本书。

10-06 01:42