【问题标题】:Merge lcov results in one report, and keep the test ids testing each line将 lcov 结果合并到一份报告中,并保持测试 ID 测试每一行
【发布时间】:2020-03-05 11:13:33
【问题描述】:

我的每个集成测试都有我的 c++ 代码的 lcov 报告。我想将它合并到一份全球报告中,我知道这是可能的,但它只会增加命中行数。我希望获得有关哪条测试命中每一行的信息。

我不知道是否有办法代替自己编写脚本。

谢谢

【问题讨论】:

    标签: c++ gcov lcov gcovr


    【解决方案1】:

    您可以将 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
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-31
    • 2016-05-03
    • 2016-11-29
    • 1970-01-01
    相关资源
    最近更新 更多