小编abh*_*pta的帖子

GCovr 生成 0% 覆盖率报告,如果 cpp、gcno 和 gcda 文件不在同一文件夹中

我在同一个文件夹中有两个文件夹,如下所示:-
1.src(它包含我的 cpp 文件)
2.linux(我在其中运行 g++ 并执行 o 文件)
现在我正在运行如下命令

cd linux
g++ --coverage ../src/example1.cpp -o example1
./example1
cd ..
/opt/gcovr-3.2//scripts/gcovr -v -r .
Run Code Online (Sandbox Code Playgroud)

我得到的输出为,覆盖率为 0%

扫描目录。对于 gcda/gcno 文件...
找到 2 个文件(并将处理 1 个)正在
运行 gcov:'gcov /opt/gcovr-3.2/doc/examples/example1/linux/example1.gcda --branch-counts --branch-probabilities --preserve-paths --object-directory /opt/gcovr-3.2/doc/examples/example1/linux' in '/opt/gcovr-3.2/doc/examples/example1/linux'
解析文件/opt/的覆盖数据gcovr-3.2/doc/examples/src/example1.cpp
过滤文件 /opt/gcovr-3.2/doc/examples/src/example1.cpp 的
覆盖数据 收集了 0 个文件的覆盖数据

为了进一步调试,我转到“linux”文件夹,按照以下命令运行

gcov /opt/gcovr-3.2/doc/examples/example1/linux/example1.gcno --branch-counts --branch-probabilities --preserve-paths --object-directory /opt/gcovr-3.2/doc/examples/example1/linux
Run Code Online (Sandbox Code Playgroud)

我得到输出为,有效覆盖

/opt/gcovr-3.2/doc/examples/example1/linux
文件 '../src/example1.cpp'
执行的行数:7 个
分支的85.71%执行:2 个的 100.00%
至少执行一次:2 个
调用的50.00% :100.00% of 1
../src/example1.cpp:creating '..#src#example1.cpp.gcov'

现在我想知道我做错了什么?我的项目很复杂,所以我不想将所有 cpp 文件从相应的“src”文件夹复制到相应的“linux”文件夹。我尝试了 …

gcovr

2
推荐指数
1
解决办法
6200
查看次数

标签 统计

gcovr ×1