問題タブ [lcov]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4974 参照

c - lcov を使用したソース ファイルのコード カバレッジ

コード カバレッジ レポートを生成するために lcov と genhtml を使用しています。次のディレクトリ構造では、tests/ ディレクトリにあるソース ファイルのコード カバレッジを取得できますが、src/ ディレクトリの my_file.c ファイルのコード カバレッジを取得できません。

tests ディレクトリから lcov コマンドを呼び出します。

lcov -b . --directory objects/ -c -o ./coverage/app.info

0 投票する
2 に答える
10215 参照

html - geninfo/genhtml で使用されるファイルを除外する方法を探しています

geninfo と genhtml (gcovr の代替、こちらを参照) を使用して、gcov によって提供されるカバレッジを使用して html ページを作成しようとしています。

  • geninfogcov の *.gcda ファイルから lcov-tracefiles を作成します
  • genhtml上記のトレースファイルから html ファイルを生成します

ただし、最終結果にはコードだけでなく、/usr/include のファイルも含まれます。

これらを除外する方法を知っている人はいますか?

マニュアルページを見てみましたが、何も見つかりませんでしたhttp://linux.die.net/man/1/geninfo

0 投票する
1 に答える
1667 参照

cygwin - cygwin lcov genhtml: エラー: ディレクトリを作成できませんか?

次のコマンドを実行すると、以下のエラーが発生します。関連するすべてのディレクトリにchmod 777があります。css ファイルと画像ファイルは正常に書き込まれますが、html ファイルが生成されません。私は何をしていますか?

0 投票する
1 に答える
182 参照

c - コード カバレッジ - どのランがどのコードをカバーしているか?

POC: https://gist.github.com/1197309

./prime3 つの実行のうちどれが実行されたかを判断し、どのコードをカバー./prime 0./prime 1て、HTML レポートに適切に表示したいと考えています。

これは簡単な方法で可能ですか?どうやってするの?他のツールは、gcc を使用する Linux で動作する限り問題ありません。

ありがとう。

注:私はその要点の作業フォークを好むでしょう:-)私は「通常の」開発者向けLinuxディストリビューションを使用しているので、ツールについて心配する必要はありません。

その他の改善は大歓迎です。

0 投票する
1 に答える
1270 参照

c - lcov:複数の実行のソースのカバレッジ

  1. シンプルなハローワードcppアプリを作成しました。
  2. gcc--coverageフラグを渡してコンパイルしました
  3. 実行可能ファイルを実行しました
  4. 呼び出しによって生成されたカバレッジ
    lcov --directory . --capture --output-file ic.info
  5. genhtmlによって生成されたhtmlベースのレポート
    genhtml -o html/ ic.info

さて、質問です。実行可能ファイルを何度実行しても、常に同じ結果が得られます。つまり、行と関数のカバレッジは同じです。実行ごとにラインカバレッジを増やす必要がありますか?何か問題がありますか?

1回の実行に対してのみカバレッジを生成する場合lcov、実行したすべての実行に対してカバレッジを生成するにはどうすればよいですか?

0 投票する
1 に答える
368 参照

gcov - -aオプションを指定するとgcovがフリーズしますか?

gcov を実行すると。問題はありません。ただし、 gcov -a を実行すると。gcov がフリーズしました。出力の最後の数行は次のとおりです。

ファイル '/usr/include/boost/archive/detail/iserializer.hpp' 行数: 55 の 78.18%

ファイル '/usr/include/boost/serialization/extended_type_info_typeid.hpp' 行数: 27 行中 40.74% /usr/include/boost/serialization/extended_type_info_typeid.hpp:'extended_type_info_typeid.hpp.gcov を作成中

なぜそれが起こっているのか知っていますか?「-a」が必要な理由は、lcov を使用するときに、そのオプションを gcov に与えるためです。geninfo をハックしてそのオプションを無視できますが、最終的にはパブリック システムで lcov を実行するので、そうしないことを好みます。

ご意見ありがとうございます。

0 投票する
1 に答える
10793 参照

c++ - CMake と lcov: gcno ファイルが見つかりません

CMake ベースのプロジェクト (複数のターゲットで構成される) でコード カバレッジを取得しようとしています。

まず、次のように gcno ファイルを生成します。

*.gcnoは次の場所に生成されます

次に、*.gcnaファイルを生成するテストを実行します

lcov を再度実行すると、次のようになります。

次のエラーが表示されます。

*.gcnoファイルを*.gcdaが生成されるディレクトリに手動で移動すると、動作するようです。

ご協力いただきありがとうございます!!!

0 投票する
3 に答える
3758 参照

gcov - gcdaファイルを含む複数のディレクトリのlcov

gcovとlcovを使用してカバレッジレポートを生成したいと思います。

私が今までやったこと:-

私がしなければならないこと:-

これらのデータファイル(.gcda)を使用する必要があり、lcovを使用してクリーンなレポートを作成したいと思います。

問題:-

ソースファイルが存在する複数のディレクトリがあり、各ディレクトリ内にオブジェクトファイルを保持するためのobj/ARCHディレクトリを作成しています。

したがって、最終的なディレクトリ構造は次のようになります。

M3、M4、M5と同じです。

プロトレベルからlcovを実行していますが、.gcdaファイルは検出されますが、.hおよび.Cファイルの検出でエラーが発生します。このプロセスパスを独立させる方法はありますか?

前もって感謝します。

0 投票する
2 に答える
4399 参照

cygwin - lcov を Cygwin で動作させる

lcov を Cygwin で動作させるには、どの Cygwin パッケージをインストールする必要がありますか?

lcov を実行しようとしたところ、次のメッセージが表示されました: コマンドが見つかりません

助けてくれてありがとう。

PS gcov が機能することを指摘する必要があります。

0 投票する
1 に答える
1539 参照

lcov - lcovおよびg++での正確な関数カウント

私はUbuntu12、g ++、lcovを使用しています。後者は。とともにインストールされapt-get install lcovます。

コンパイルに成功し、を使用してhtmlレポートを生成していgenhtmlます。ラインカバレッジ情報は良さそうですが、関数カバレッジカウントの多くは奇妙に見えます。たとえば、コンストラクタと仮想デストラクタのみを含む1つのC ++クラスは、7つの関数を持つものとしてlcovによって報告されます。したがって、セッション中に両方に電話をかけた場合、私のカバレッジは2/7になります。

これは、呼び出されることのない1つの関数を持つクラスを示す出力例です。その関数が何であるかを理解することはできません:

出力例

誰かが壊れた関数名をデコードし、膨らんだ関数の数を説明し、問題を解決する方法を提案できますか?

前もって感謝します。

アップデート

OK、以下の元の質問に答えたので(コメントを参照)、これらの内部のctorとdtorが関数カバレッジ統計を破壊するのを防ぐ方法についての提案を募集しています。関数カウントを自分で作成した関数に制限するにはどうすればよいですか?