2

例を挙げて質問します。次のファイルがあるとします。

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

ありがとう。

4

1 に答える 1

2

lcov の --remove および --extract オプションを確認してください (man ページを参照)。あなたの場合、変更したいかもしれません

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
于 2012-10-10T12:02:10.683 に答える