使用gcov进行linux代码覆盖率测试

1、CMakeLists.txt中更改CMAKE_CXX_FLAGS或在调用cmake时指定 -ftest-coverage -fprofile-arcs

-
cmake -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS} -ftest-coverage -fprofile-arcs" ..
-

2、make 后,代码覆盖率相关的信息会生成文件到“main.cpp.gcno”目录中

3、运行 ./sample,会生成“.gcda”文件

4、使用gcov查看此次运行的代码覆盖率:

-
gcov CMakeFiles/sample.dir/main.cpp.cpp -f
-

5、再看一个100%的示例