我在我的项目中成功使用了gcov: 我可以使用gcov标志构建我的项目:-fprofile-arcs -ftest-coverage 我链接了-lgcov选项 我运行我的单元测试程序,产生了大量的gcda和gcno文件。 我多次运行gcov,产生了大量的gcov文件。 我总结结果并生成类似...
我正在开发一个项目,其中使用了几个boost库。在查看我们的测试报告时,我们发现有时测试覆盖率信息与我们的源代码不符。我能够追踪到这是由于boost::range引起的。我认为这是由于库内部的一些静态初始化引起的,尽管我无法说出更具体的原因。 基本上,如果你使用gcc --coverage编...
我正在使用GCC 4.9和GCOV来获取代码和分支覆盖率,但是对于我的C++代码来说,分支覆盖率的结果完全无用。似乎即使使用我知道的所有-fno-*-inline标志,GCC也会内联模板。以下是一个小示例应用程序,说明了这个问题: #include <string> #inclu...
我正在使用gcov分析我的代码。在对象创建在堆栈中时,它显示我的代码比较少了2个函数。但是,当我使用new-delete时,可以实现100%的函数覆盖率。 代码: class Animal { public: Animal() { } virtual ~An...
我正在尝试在Linux(Ubuntu)上使用gcov来查看源代码每行的执行频率。 我已经将以下标志添加到我的gcc编译器和链接器标志中: CCFLAGS = -fprofile-arcs -ftest-coverage LDFLAGS = -fprofile-arcs -lgcov ...
当使用 gcov 的 gcc 4.1 下一行代码: p = new Class; 被报告为 100% 分支覆盖 <-- 这对我来说是没问题的。 为什么使用 gcc 4.4 及更高版本相同的代码会被报告为: [+ -] p = new Class; (50% 分支覆盖)... &l...
mkdir -p /tmp/build && cd /tmp/build && mkdir -p /tmp/src && echo "int main(){return 0;}" > /tmp/src/prog.c && g...