Python Windows下的Gcovr错误

Python Windows下的Gcovr错误,python,c,windows,gcov,gcovr,Python,C,Windows,Gcov,Gcovr,我正在尝试使用Gcovr生成一个C程序结果的HTML文件。 我已经安装了gcov(通过MinGW)、Python、easy_stall和gcovr。 将C:\MinGW\bin、C:\Python33和C:\Python\Scripts添加到Windows路径 现在我遇到的问题(在Windows命令行中): 1。gcovr命令 在使用pythongcovr命令从c:\Python33\Scripts执行之前,无法在任何目录中找到/执行gcovr 临时修复,将gcovr重命名为gcovr.py?但

我正在尝试使用Gcovr生成一个C程序结果的HTML文件。 我已经安装了gcov(通过MinGW)、Python、easy_stall和gcovr。 将
C:\MinGW\bin
C:\Python33
C:\Python\Scripts
添加到Windows路径

现在我遇到的问题(在Windows命令行中):

1。gcovr命令

在使用
pythongcovr
命令从
c:\Python33\Scripts
执行之前,无法在任何目录中找到/执行gcovr

临时修复,将
gcovr
重命名为
gcovr.py
?但这听起来不是正确的解决方案

2。执行gcovr

我打电话时没有结果:

c:\Python33\Scripts>python gcovr -r "d:\somepath\Debug"
------------------------------------------------------------------------------
File                                       Lines    Exec  Cover   Missing
------------------------------------------------------------------------------
------------------------------------------------------------------------------
TOTAL                                          0       0    --%
------------------------------------------------------------------------------
但gcov给出了正确的结果

D:\somepath\Debug>gcov some_file.gcda
File '../some_file.c'
Lines executed:21.43% of 14
Creating 'some_file.c.gcov'

我需要做什么才能获得正确的结果?

尝试运行相同的命令,但不使用
-r
选项,即:


c:\Python33\Scripts>pythongcovr“d:\somepath\Debug”

我也遇到了同样的问题。我确实用以下方法解决了它

转到项目的根目录(主目录)

要以表格格式生成输出, 在命令提示符下,发出命令以在中生成覆盖率

1) 表格格式

     "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file>"
   "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file> -x -o <desired_name.xml>"
   "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file> –-html -o <desired_name.html>"
“python C:\Python27\Scripts\gcovr-r。--对象目录”
2) XML格式

     "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file>"
   "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file> -x -o <desired_name.xml>"
   "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file> –-html -o <desired_name.html>"
“python C:\Python27\Scripts\gcovr-r。--对象目录-x-o”
3) HTML格式

     "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file>"
   "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file> -x -o <desired_name.xml>"
   "python C:\Python27\Scripts\gcovr -r . --object-directory <path to *.gcno *.gcda file> –-html -o <desired_name.html>"
“python C:\Python27\Scripts\gcovr-r。--对象目录–-html-o”

这篇文章可能会解决您的问题

也有同样的问题

问题是源文件不在根文件夹的“下方”,默认情况下,gcovr将对其进行过滤

如果你打电话

python gcovr -r "d:\somepath\Debug" --verbose
你会注意到这条线的

Filtering coverage data for file ../some_file.c
一个简单的修复方法是添加一个过滤器选项:

python gcovr -r "d:\somepath\Debug" --verbose -f .*
从gcovr帮助:

-f FILTER,--FILTER=FILTER 仅保留与此规则匹配的数据文件 表情

gcovr文档没有提到的是,如果不提供过滤器,它将使用根路径作为默认过滤器


希望它能帮助别人。

我也有同样的问题-你能找到解决方案吗?