【问题标题】:lcov, reporting 0% coverage for not tested headerslcov,报告未测试标头的覆盖率为 0%
【发布时间】:2012-09-16 10:45:28
【问题描述】:

我会用一个例子来问。让我们假设以下文件:

root
    - yes.h
    - not.h
    - test.cpp

“test.cpp”包括“yes.h”

当我运行 lcov 时会显示 yes.h 和 test.cpp 中覆盖的百分比,但是(这是我的问题)我希望“not.h”的覆盖率为零,这样我就可以真正获得有价值的覆盖率公制。有什么办法可以实现吗?

这是我的 lcov 用法:

g++ --coverage test.cpp
lcov --directory . --zerocounters
lcov -c -i -d . -o app_base.info
./a.out
lcov -c -d . -o app_test.info
lcov -a app_base.info -a app_test.info -o app_total.info
geninfo app_total.info

谢谢。

【问题讨论】:

    标签: c++ code-coverage gcov lcov


    【解决方案1】:

    您可能想查看 lcov 的 --remove 和 --extract 选项(参见手册页)。 在你的情况下,你可能想要改变

    lcov -a app_base.info -a app_test.info -o app_total.info
    geninfo app_total.info
    

    lcov -a app_base.info -a app_test.info -o app_tmp.info
    lcov --remove app_tmp.info */not.h --output app_total.info
    geninfo app_total.info
    

    【讨论】:

      猜你喜欢
      • 2019-09-14
      • 1970-01-01
      • 1970-01-01
      • 2015-12-14
      • 2017-03-31
      • 1970-01-01
      • 2019-07-07
      • 2012-11-28
      • 1970-01-01
      相关资源
      最近更新 更多