我的每个集成测试都有我的 c++ 代码的 lcov 报告。我想将它合并到一份全球报告中,我知道这是可能的,但它只会增加命中行数。我希望获得有关哪个测试击中每一行的信息。
我不知道是否有办法代替自己编写脚本。
谢谢
您可以将 geninfo 与 lcov 结合使用来实现类似的效果。
如果您同时拥有 .gcno 和 .gcda 文件,那么首先我们需要生成 .info 文件。
要生成 .info 文件,请使用:
geninfo "path for .gcda files" -b "path for the source files" -o ./coverage1.info
因此,这将为您的第一次测试生成 .info。同样,为所有测试生成 .info。
现在您可以使用 lcov 组合这些信息文件并获得组合报告。为此,请使用:
lcov --add-tracefile coverage1.info -a coverage2.info ...coverageN -o merged.info
现在您已经合并了 .info 文件,您可以使用 genhtml 生成 HTML 报告以便更好地查看。
genhtml merged.info -o CodeCoverage