当我运行gcov时,输出显示87%的覆盖率.然后我想使用gcovr,但它从来都不起作用。我尝试从许多目录中运行,有很多选项。在某些情况下,一些文件我得到了覆盖,但我不想看到的文件。
我的项目由3个文件组成:
src\main.csrc\makefiletst\test1.ctst\test2.ctst\makefiletst\obj\all对象文件,gcno,gcda存储在这里.build\build.bat (windows)我应该改变目录结构吗?如何查看我应该使用哪个版本的gcov?我希望看到main.c的覆盖范围,但只获得test1.c和test2.c的覆盖率,而这些内容与覆盖率无关!!
在测试文件旁边,我包含了C:\编译器上的目录,这些目录并不是覆盖范围所必需的。
我试过Python27:
python c:\python27\scripts\gcovr -g --object-directory=. -r ..\..\..\ --html --html-details -o program.html -v我试过Python36:
c:\python36\scripts\gcovr --use-gcov-files -v --object-dir=.但永远不要让我的设备接受测试。只有没有gcovr的gcov才能工作,所以文件必须是正确的。
发布于 2018-03-27 12:47:19
尝试添加-f '‘选项。在gcovr中有一个bug,当我们从树中构建出来时,它就会退出。
发布于 2018-04-15 16:27:47
在Windows中运行GCOVR时,我发现了几个问题,特别是关于\而不是/和使用冒号字符:(如C:\file.c )
当您使用\它需要使用其中的两个\并且在gcovr的某个地方它更改为\或\\ .这并不顺利,在某些时候,它试图通过减去2条路径来查找源文件的根。但是它找不到这个,例如\a\b\c\d中找不到。所以,查看一下: github.com/barthoukes/gcovr
THe解决方案仍然很脏,但它适用于我在Windows中的项目。我想gcovr的人也在讨论这个问题。
您只需要文件: gcovr
https://stackoverflow.com/questions/49506856
复制相似问题