0

我在一个文件夹中有 .gcda 和 .gcno 文件,我从中运行以下命令。

$ gcovr -r 。

在此处输入图像描述 如果我在 gcda 文件上运行 gcov,结果如下所示 ,我得到了正确的覆盖率值。

4

1 回答 1

3

在多个论坛中进行了繁琐的搜索和无数次的实验后,我终于弄清楚了问题并解决了它。

要从 gcovr 获得正确的输出,有两件事很重要。一个是 gcovr 的执行位置,另一个是根目录路径。

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-12T11:43:11.997 回答