gcov
简介
gcov 全称 GNU Coverage,由 GNU 出品的代码覆盖率检查工具。
使用
新创建源码文件 foo.c,如下:
#include <stdio.h>
void func(int flags)
{
if (flags)
printf("hello\n");
else
printf("no\n");
}
int main(int argc, char *argv[])
{
func(1);
func(1);
return 0;
}编译源码文件,生成 gcov 标记文件 x.gcno、可执行文件 foo
跑可执行文件 foo,生成 gcov 数据文件 x.gcda
通过 gcov 工具生成 x.c.gcov 文件
打开 foo.c.gcov,可以看到每一行的覆盖信息,如下:
其中 - 代表无效代码行,数字 代表此行执行次数,##### 代表此行没有执行过。
也可以通过 lcov 工具进行可视化,转换成 index.html 在浏览器显示,如下:
Last updated
Was this helpful?