9

カバレッジのグラフィカル出力を生成するためにlcovでコードカバレッジ分析を行うためにgcovを使用します。これは、オブジェクト ファイルの少なくとも一部が実行されたコード ファイルに適しています。まったく実行されていないファイルを追跡できるようにしたい。これは、これらのファイルに対して .gcda ファイルが生成されていないことに関係していると思われます。実行に関係なく、すべてのオブジェクト ファイルに対して .gcda ファイルの生成を強制する方法はありますか?

4

2 に答える 2

7

これを行う手順は次のとおりです。

http://linux.die.net/man/1/lcov

テスト ケースのデータをキャプチャする際の推奨手順:

  1. ベースライン カバレッジ データ ファイルの作成

    lcov -c -i -d appdir -o app_base.info

  2. テストを実行する

    appdir/test

  3. テスト カバレッジ データ ファイルの作成

    lcov -c -d appdir -o app_test.info

  4. ベースライン データとテスト カバレッジ データを組み合わせる

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

于 2014-11-14T19:58:06.793 に答える
0

正しくコンパイルおよびリンクされたすべてのファイルには、.gcda ファイルがあります。*.gcda ファイルが見つからない場合は、*.gcno ファイルが存在するかどうかを確認してください。すべての Makefile が正しくビルドされているかどうかがチェックされない場合:

  • -ftest-coverage : ソース ファイルがこれでコンパイルされると、.gcno ノート ファイルが生成されます。
  • -fprofile-arcs : GCC -fprofile-arcs オプションでビルドされたオブジェクト ファイルを含むプログラムが実行されると、.gcda カウント データ ファイルが生成されます。

詳細: https://gcc.gnu.org/onlinedocs/gcc/Gcov.html#Gcov

于 2014-11-04T11:05:19.073 に答える