15得票5回答
为什么我的单元测试没有覆盖到任何行而 gcov 没有报告任何行被覆盖?

我正在使用 Xcode 3.2 在 10.6 上,使用预装的 gcov 和默认的 GCC 编译器(版本均为 4.2.1)。我创建了一个依赖 Cocoa 单元测试框架的程序包,并按照苹果文档 设置了 gcov 检测的构建配置,基于没有启用任何编译器优化的 Debug 配置。 当我使用这个“Gco...

14得票1回答
从gcov/lcov覆盖结果中排除某些功能

能否从gcov覆盖率分析中排除某些函数或代码行?我的代码包含用于调试的某些函数,这些函数并没有在测试套件中被执行。这些函数会导致gcov报告的覆盖百分比降低。我希望从结果中排除这些函数。如果无法通过gcov实现,也许可以通过lcov实现,但我无法弄清楚如何操作。感谢您的帮助。

13得票1回答
gcov在Clang和GCC上产生不同的结果

我正在尝试通过使用CMake、googletest和gcov进行测试覆盖,以正确地构建C++项目的结构。我想要构建一个通用的CMakeLists.txt,可以适用于任何平台/编译器。 这里是我的第一次尝试。然而,如果我尝试构建项目,然后运行lcov(生成报告),我会发现如果我使用CLang(正...

13得票2回答
寻找一种方法来排除geninfo/genhtml使用的文件。

我们正在尝试使用geninfo和genhtml(gcovr的替代品,请参见这里)使用gcov提供的覆盖率生成html页面。 geninfo会从gcov的*.gcda文件创建lcov-tracefiles genhtml从上述tracefiles生成html文件 然而,最终结果不仅包括我...

13得票3回答
LCOV:函数结尾的分支覆盖率

这个函数末尾的分支是什么?我该如何处理它们?

12得票2回答
使用gcov进行交叉编译,但GCOV_PREFIX和GCOV_PREFIX_STRIP被忽略。

我想使用GCOV进行代码覆盖率测试,但是测试将在另一台机器上运行。因此,在可执行文件中硬编码的路径到.gcda文件将无法工作。 为了更改默认目录,我可以使用GCOV_PREFIX和GCOV_PREFIX_STRIP环境变量,如这里所说。 这是我使用的命令: $ export GCOV_P...

12得票4回答
Gcov和switch语句

我正在运行gcov对一些包含switch语句的C代码进行覆盖率测试。我编写了测试用例以覆盖该switch语句中的每条路径,但它仍报告switch语句中的一个分支未被执行并且“至少执行一次”统计数据小于100%。 这里是一些演示样例代码:#include "stdio.h" void foo(...

12得票1回答
我该如何告诉 lcov 去哪里找我的 .cpp 和 .h 文件?

我的源代码和构建目录如下(参见Makefile to put object files from source files different directories into a single, separate directory?),经过make编译和运行FooAndBarTests之后...

12得票2回答
在使用带有gcov的libtool时出现“隐藏符号`atexit'被DSO引用”的错误

我有一个使用GNU Autotools构建脚本和libtool链接的C++项目。最近,我通过确保使用gcov进行代码覆盖测试。GCOV_CFLAGS="-fprofile-arcs -ftest-coverage" GCOV_LDFLAGS="-fprofile-arcs -ftest-cov...

11得票1回答
如何让 lcov 运行更快?

我在使用 lcov 时遇到了性能问题。我正在七个不同的配置文件中执行一个程序,收集每个配置文件的覆盖率数据,然后使用 lcov 合并这些覆盖率数据:lcov --rc lcov_branch_coverage=1 -a coverage_1.dat -a coverage_2.dat -a c...