Tag: code coverage

如何使用gcov / lcov生成fork()’d孩子的覆盖率报告?

我无法为我的项目生成覆盖率报告 – 看起来叉子之后的子进程中的线路从未被击中,尽管它们显然已经实际存在。 这是分叉部分的工作服报告 (结果与lcov + genhtml相同)和构建日志 。 该项目使用带有libtool的autotools进行构建,并将所有内容打包为静态库。 ( configure.ac , library makefile.am , tests makefile.am ) 我试图将覆盖标志添加到测试中,并且–coverage在CFLAGS中添加 – 但无济于事。 最让我烦恼的是我试图在一个简单的C文件上重现行为,如下所示: #include #include #include #include int main(void) { pid_t pid; if (!(pid = fork())) { puts(“In child”); } else { puts(“In parent”); waitpid(pid, NULL, 0); } return 0; } 使用以下shell会话: /bin/sh ./libtool –tag=CC –mode=compile […]