linux下代码覆盖率检查工具---gcov的用法

来源:互联网 发布:淘宝售后服务卡模板 编辑:程序博客网 时间:2024/04/29 10:43
1.增加编译和链接的参数:-fprofile-arcs -ftest-coverage
以Eclipse为例,为一个C++工程增加上述参数:
Project->Properties->C/C++ Build->Settings->GCC C++ Compiler->Command: 输入 g++ -fprofile-arcs -ftest-coverage

Project->Properties->C/C++ Build->Settings->GCC C++ Linker->Command: 输入 g++ -fprofile-arcs -ftest-coverage

2.清空并Build整个工程。

3.运行可执行文件或测试。

4.生成某文件的覆盖率报告。
例如:
sudo gcov ../src/clist.cpp -o ../Debug/src/
因为gcov需要读取和创建文件,所以建议使用sudo来执行。
../src/clist.cpp 表示要分析的源文件。
-o参数表示.o文件所在位置
执行完后,在当前目录下会生成clist.cpp.gcov,这就是该文件的覆盖率报告。

5.查看覆盖率报告
查看clist.cpp.gcov文件,里面带有“####”标记的行表示未被覆盖到的行。
补充:代码覆盖率检查配合单元测试一起进行,对于代码质量的检验效果更好!