問題タブ [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 に答える
1085 参照

javascript - lcov と istanbul を使用しているときに、Javascript コードカバレッジの一部のステートメントを無視するにはどうすればよいですか?

コードコメントにあるディレクティブをsonarqubeに考慮させるにはどうすればよいですか? このようなコメントを使用していくつかのブランチを無視する方法を説明するイスタンブールのページがあります

( https://github.com/gotwarlost/istanbul/blob/master/ignoring-code-for-coverage.mdを参照)

これは、Istanbul によって生成された HTML レポートではうまく機能しますが、Sonarqube では機能しません。

0 投票する
0 に答える
216 参照

makefile - lcov は、単一のプロセスで .gcda ファイルを処理しているように見えます。多くのコアがあり、それらをこの処理に使用したいと考えています。どのように?

私が実行した場合:

すべてのコアを利用するのではなく、一度に .gcda ファイルを 1 つずつ処理しているようです。coverage_all.infoすべてのコアを使用しながらファイルを作成できるように、この手順を書き直すことはできますか?

make ファイルに入れて-jオプションを指定して make を実行し、複数のジョブを生成して、それぞれの結果を別のファイルに記録することを考えています。次に、すべてのジョブが完了したら、おそらくlcov --add-tracefileオプションを使用してそれらをマージします。

誰かがこのようなことをする方法を知っていますか?

0 投票する
0 に答える
251 参照

sonar-runner - sonar-runner lcov レポートの不一致

SonarQube コミュニティ、

Node/JS プロジェクトの分析を行うと、istanbul 経由で報告された値のカバレッジは、SonarQube サーバーで報告および表示されるものとは大きく異なります。SonarQube サーバーは 4.5.4 です。ソナー ランナーのバージョンは 2.4 です。プロジェクトは次のレポートを生成しました。

すべてのファイルのコード カバレッジ レポート

ステートメント: 67.65% (1520 / 2247) 分岐: 49.76% (418 / 840) 関数: 65.13% (269 / 413) 行: 68.31% (1481 / 2168) 無視: なし

ファイル ステートメント 分岐 関数 行
クラス/ 94.4% (118 / 125) 70% (7 / 10) 100% (9 / 9) 94.35% (117 / 124) ヘルパー/ 84% (126 / 150) 75.44% (43 / 57) ) 86.67% (26 / 30) 84.25% (123 / 146) サービス/ 82.64% (976 / 1181) 66.67% (272 / 408) 81.63% (160 / 196) 83.26% (955 / 1147) view_controllers/ 37.93% ( 300 / 791) 26.3% (96 / 365) 41.57% (74 / 178) 38.08% (286 / 751) 2015 年 9 月 15 日火曜日 17:01:21 GMT+0000 (UTC) にイスタンブールで生成

SonarQube 4.5.4 のドリルダウンで示されるカバレッジ値は、他のレポートが示すものとは大きく異なります (画像を投稿できなかったことをお詫びしますが、これを行うほどの評判はまだありません)。

技術的負債 64d

発行数 5,707

ブロッカー 0
クリティカル 3
メジャー 3,922
マイナー 696
情報 1,086
ユニット テスト カバレッジ 28.6% ライン カバレッジ 25.6%
コンディション カバレッジ 49.8%

SQALE評価A

技術的負債比率 1.0% プロジェクトには、次の品質ゲート条件に関する警告があります: カバレッジ 28.6% < 70.0% 重大な問題 3 > 0クライアント プロファイル: ソナー方式 (JavaScript)

品質ゲート: SonarWayWithFindbugsForNFSWithBuildBreaker - java (デフォルト)

コード行数 104,320

JavaScript

ファイル 426

ディレクトリ 109
行 120,238

関数 6,726

クラス 4
ステートメント 32,377
アクセサー 0 無用なコード 18,260 18,260 行の重複 重複 41.5% 行 49,923
ブロック10,915
ファイル 89 複雑さ 4.9 /関数 4.5 /クラス 29.5 /ファイル 合計: 12,588

実際の lcov.info ファイルが必要な場合、またはこの問題をよりよく分析するために上記のデータの png ファイルが必要な場合は、電子メールで直接送信できます。

このような不一致がある理由を突き止めようとするために、私に何を提案しますか?

正しいデータをログに記録する方法についてご意見をお聞かせください。

ダグ

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

relative-path - lcov絶対パスと相対パス

lcov は、絶対パスと相対パスのどちらを使用するかをどのように決定しますか?

app製品の各共有ライブラリのサブディレクトリと、いくつかのバイナリのサブディレクトリを含むディレクトリがあります。このようなもの:

ただし、 および を実行するlcovgenhtml、ディレクトリは次のようにリストされます。

つまり、私の共有ライブラリ ディレクトリの 1 つに含まれるすべてのものは相対パスを使用し、それ以外のものはすべて絶対パスを使用します。 なんで?

lcovandの呼び出しgenhtmlは非常に簡単です。

0 投票する
0 に答える
86 参照

triggers - SystemC の GNU ライブラリ GCOV、LCOV を使用したコード カバレッジのトリガー ポイント?

コード カバレッジ分析のために SystemC で GNU Libs GCOV と LCOV を使用しています。すべてうまくいきますが、トリガーポイントを持つことができるかどうか疑問に思っていましたか? オシロスコープにトリガーオプションがあり、トリガーポイントでの状態をキャプチャするのと同じです。その特定のインスタンスでのカバレッジ レポートを取得したいと考えています。適切な用語であれば、フットプリントのようなものです。

または、それが不可能な場合、特定の時点でのカバレッジ レポートを作成することは可能ですか?

ありがとう。

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

ios - getcov と lcov による xcode7 コード カバレッジ

最新の Xcode では、ローカル ビルドまたは統合のコード カバレッジを表示できるようになりました。カバレッジ結果をエクスポートして、このデータの分析を構築したいと考えています。

プロジェクトhttps://github.com/jonreid/XcodeCoverageは、レポート データを xml または html にエクスポートする簡単な方法のようで、それを使用して別のものを構築できます。しかし、私はいくつかの困難を抱えています。

セットアップはかなり簡単です。

  1. リポジトリからプルします。
  2. プロジェクトに XcodeCoverage を追加します。
  3. exporting.sh を実行するビルド フェーズ スクリプトを追加します。
  4. テストを実行します。
  5. getcov を実行してデータを表示します。

getcov を実行すると、次の出力が得られます。

lcov または getcov スクリプトのバージョンに関する情報が欠落しているようで、coverage.info のビルドに失敗しています。

Xcode7でこれを使ってみた人はいますか

Xcode からカバレッジ データをエクスポートするための他の便利なツールを知っている人はいますか?

ありがとう、

0 投票する
0 に答える
338 参照

python - 共有ライブラリから直接llvmカバレッジを初期化する方法は?

フラグを使用してライブラリをコンパイルし、-fprofile-arcs -ftest-coverage -pgフラグを使用してリンクした C/C++ 共有ライブラリをテストして-fprofile-arcs -ftest-coverageいます。

ctypes python ルーチンを使用して、Python で共有ライブラリを読み込んでテストしています。

私のpythonバイナリがフラグにリンクされていなかったため、Gcdaファイルはpythonから生成されません-fprofile-arcs -ftest-coverage

そこから python を実行すると、適切なカバレッジ フラグでコンパイルされたlldb/gdbgcda ファイルが生成されます。lldb/gdb

適切なカバレッジ関数を呼び出してプロファイル アークを初期化し、共有ライブラリ内の関数を呼び出す前にカバレッジをテストしてから、適切なカバレッジ クロージング ルーチンを呼び出すことはできますか?

ライブラリで nm を実行したところ、次のルーチンに気付きましたが、それらを呼び出す方法がわかりません。

llvm_gcov_init はパラメータを取るように見えるので、Python から直接呼び出すことはできません。

コード カバレッジを直接初期化したいのですが、複数のマシンでカバレッジを使用して Python を再コンパイルする必要はありません。