問題タブ [gcovr]
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.
objective-c - GCovr が有効なレポートを生成しない
コード カバレッジを追跡するために、Cobertura を使用して Jenkins をセットアップしたいと考えています。残念ながら、有効な xml を生成できません。
私は使用しています:
- gcovr 2.5 プレリリース (r2774)
- Xcode 4.6.1 ビルド バージョン 4H512
私のプロジェクトはコード カバレッジ ファイルを正しく生成していますが、gcovr で作成されたレポートは役に立ちません。
レポートを生成するために使用するコマンドは次のとおりです。
これにより、次の出力が作成されます。
追加情報:
--object-directory と -r を削除して、派生データ ディレクトリからコマンドを実行すると、有効なレポートが生成されます。このレポートは cobertura から読み取ることができますが、ソース ファイルに関する詳細情報を表示することはできません。
python - Windows での Gcovr エラー
Gcovr を使用して C プログラムの結果の HTML ファイルを生成しようとしています。gcov (MinGW 経由)、Python、easy_stall、gcovr をインストールしました。C:\MinGW\bin
、C:\Python33
およびC:\Python\Scripts
を Windows PATH に追加しました。
今私が抱えている問題(Windowsコマンドラインで):
1.gcovr コマンド
c:\Python33\Scripts
gcovr は、python gcovr
コマンドで実行されるまで、どのディレクトリからも検索/実行できません。
一時修正、名前gcovr
をgcovr.py
? しかし、これは正しい解決策とは言えません。
2.gcovrの実行
電話しても結果がありません:
しかし gcov は適切な結果をもたらします。
適切な結果を得るにはどうすればよいですか?
code-coverage - gcovr を使用してゼロ カバレッジを表示する
gcovr を使用して、Jenkins の C++ プロジェクトのカバレッジ レポートを生成しようとしています。私はそれを機能させることができましたが、1つの問題で立ち往生しています。gcovr は、カバレッジがゼロのファイルの統計を表示しません。それらには .gcno ファイルしかなく、.gcda ファイルは生成されず、gcovr はそれを結果に表示しません。
したがって、プロジェクト全体で 80% のカバレッジがありますが、2 つのテストしか書かれておらず、実際にはテストに含まれるソース ファイルだけで 80% のカバレッジです。もちろん、大規模なプロジェクトの場合、そのような統計を使用しても意味がありません。
このチケットhttps://software.sandia.gov/trac/fast/ticket/3887の解決策としてhttps://software.sandia.gov/trac/fast/changeset/2766この変更セットを見つけましたが、そうではないようです働く。
私は何か見落としてますか?
ps gcovr 3.1-prerelease を使用しています
ios - 別のマシンから xcodebuild を使用した単体テスト
私はこれでぐるぐる回っています。基本的に、1 台のマシンに Jenkins があり、別の iOS ビルド サーバーとして Mac サーバーがあります。単体テストを実行し、Mac Mini で Jenkins からコード カバレッジを実行できるようにする必要があります。テストを実行するスクリプトがあり、マシン自体のコマンドラインから実行すると完全に機能します。問題は、Jenkins から実行しようとすると、実際のテストが実行されないことです。ビルドプロセスを実行し、実際にテストを実行せずに「テストが成功しました」と報告します。基本的に、マシンに ssh するときにテストを実行できる必要があります。
gcovr を使用して、単体テスト カバレッジ用の xml ファイルを作成しています。実行しているように見えるxctoolの使用を検討しましたが、gcnoではなくgcdaファイルのみを作成するため、うまく機能しません。
この時点で頭を壁にぶつけているので、助けていただければ幸いです。
私が実行しているコマンド: xcodebuild -workspace MyProject.xcworkspace -scheme MyProject -sdk iphonesimulator test
マシンにログインしているときにコマンドラインから実行すると問題なく実行されますが、ssh でログインするとテストは実行されません。
jenkins - ジェンキンスを使用したgcovrが機能しない
Jenkins の gcovr を使用してコード カバレッジ レポートを生成しようとしていますが、結果は生成されませんが、ターミナルから実行すると正常に動作します。同じものを生成するためにjenkinsを介して実行しているコマンドは次のとおりです。
ターミナルから同じことを実行すると、grt が動作します。
助けてくれてありがとう!
PS: マスター マシンでジェンキンスを実行し、スレーブ マシンでジョブを実行するように指示しています。
xcode5 - Gcovr は 0 ファイルのカバレッジ データを生成します
iOS アプリケーションのコード カバレッジを設定しています。XCode 5.0.2 と gcovr 3.1 を使用して、iOS 7 デバイスのコード カバレッジをテストおよび実行しています。最初は.gcda
ファイル生成に問題がありましたが、このブログに従って問題を解決しました。
デバッグ モジュールのみについて、[テスト カバレッジ ファイルの生成] を [はい] に、[インストルメント プログラム フロー] を [はい] に設定しました。-fprofile-arcs -ftest-coverage
「その他の C フラグ」でデバッグ モジュールも設定しました。__gcov_flush()
アプリケーションの終了時にアプリ コードを追加しました。
現在、.gcda ファイルは問題なく生成されています。
次に、それをホーム ディレクトリのワークスペースにコピーします。ワークスペースから、アプリケーションのコード カバレッジを実行しようとしました。gcovr
コマンドラインからコマンドを実行し、持っている 252 個の gdca ファイルを渡し–object-directory
、コマンドを実行します。gcov
最後に、次の出力が得られます。
Gathered coverage data for 0 files
問題を解決するのを手伝ってください。同様の問題をブラウジングするのに多くの時間を費やしましたが、解決策はどれもうまくいきません。
c++ - コンパイラが生成したデッドコードを無視するための lcov および gcovr オプション
私のチームは、デッド/コンパイラ生成コードのブランチ カバレッジを報告する gcov を回避する方法を探しています。gcovr には、--exclude-unreachable-branches
必要なことを行うように見えるオプションがあることに気付きました。また、lcov には、ソース コード内の除外マーカー--no-markers
を無視するオプションがあります。
これらの 2 つのオプションは、コンパイラが生成した「デッド コード」を分岐カバレッジから除外しますか?
また、気になるのは、
これら 2 つのツールの違いは何ですか?
現在 lcov を使用していますが、gcov 情報がグラフィカルな表示形式で表示されることがわかっています。
python - ルートディレクトリ指定時のgcovr無限ループ
背景
私は python ツールを使用してgcovr
、いくつかの c プロジェクトのカバレッジ データを生成しています。問題なくカバレッジ データを取得できますが、ソース ファイルを検索するツールの問題により、どのコード行がカバーされているかを確認できません。
によって生成された XML データgcovr
を調べたところ、ツールがカバレッジ情報のために間違ったディレクトリを参照していることに気付きました。そのため、 のドキュメントで指定されているように、ソース ファイルのルートを指定しましたgcovr
。
ただし、ソース ファイルのディレクトリを指定するとgcovr
、無限ループに陥ります。
質問
この無限ループの原因は何ですか?また、ソース ファイルが存在するディレクトリを指定するにはどうすればよいですか?
この問題を解決するために追加情報が必要な場合は、できる限り提供します。
cmake - テストされていないファイルのコード カバレッジのための CMake + Jenkins
1 つの cmake プロジェクトでコンパイルされ、Jenkins で公開されたすべての C ソース ファイルのコード カバレッジ統計を取得するソリューションを探しています。
私は CMake 2.8.9、gcovr 3.1、Jenkins 1.564 を使用し、さまざまなバージョンの gcc/gcov (4.7.2 および >= 4.8.0) を試しました。
私の知る限り、2つの異なる解決策があります:
一方では gcovr を使用すると、ジェンキンスで公開可能な cobertura xml ファイルが生成されますが、カバレッジ統計でカバーされていないファイルを考慮に入れることができませんでした。これは、.gcno が存在する (.gcda は存在しない) にもかかわらず、テストされていないファイルが gcov によって考慮されないためです。gcov の動作が変更されたため、gcovr がテストされていないファイルで機能しなくなったのではないかと思います (ただし、動作するのを見たことがありません)。ただし、正しいバージョンの gcc/gcov を見つけることができず、多くのことを試しました (4.7.2 および>= 4.8.0)。
一方、Cmakeはテストされていないファイルを考慮して正しい統計を計算しますが、ジェンキンスで公開するcoberturaレポートを生成できません...
gcovr での回避策、または cobertura xslt への cmake カバレッジ、またはこの問題に答える他のすべてのオプションが必要です。
あなたの提案に感謝します
ピエール