我有一个C ++类,Foo。当我在我的单元测试中运行gcov时,它报告了Foo方法的良好覆盖率数据,但是在类声明本身没有任何报告:
14 0 : class DllExport Foo: public Bar {
15 : protected:
16 : float field1;
17 : long field2;
18 : public:
19 21 : virtual bool operator==(const Foo& other) const override { return field1 == other.field1 && field2 == other.field2; };
我注意到这种情况发生在我的一些课程中。
我正在使用lcov生成我的报告:
lcov --base-directory . --directory . -c -o foo.info
lcov --remove foo.info "/usr*" -o foo.info
rm -rf ../cov_report
genhtml -o ../cov_report -t "Foo Test Coverage" --num-spaces 4 foo.info
我知道正在使用该类,因为我可以看到类'方法的覆盖值(参见上面的运算符重载)。
如何解决此问题,以便报告正确的覆盖率数据?