問題タブ [jacoco]
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.
jenkins - ジェンキンス・ソナー・ジャココ
Jenkins でビルドすると、私の JUnit テストカバレッジがソナーに反映されません。ソナーの「単体テストのカバレッジ」フィールドは空のままですが、「単体テストの成功」フィールドには正しい値が表示されます。テストカバレッジにはjacocoを使用しています。jenkins では、jacoco のレポートがうまく機能し、生成された html で正しいカバレッジが示されます。ソナーにしか届かない。
jenkins の jacoco プラグインを使用して、次のパラメーターを使用してスタンドアロンのソナー分析を呼び出します。
パスとアリタスクは正しいです。多分私は明らかな何かを見逃していますか?助けてくれてありがとう。
こんにちはレッドモ
java - 「テストごとのカバレッジに関する情報はありません。」Jacoco Ant ビルドのソナーから
Ant、Jacoco、Sonar を使用しています。ビルドを実行すると、ソナーから「テストごとのカバレッジに関する情報がありません」と表示されます。Sonar ダッシュボードにはカバレッジ結果がありますが、ドリルダウンしてコードを表示することはできません。ただし、Jacoco によって生成された HTML レポートには、コードへのドリルダウンが含まれています。これは私のカバレッジ タスクです。
私のソナーターゲットは次のようになります。
誰かが私が欠けているものを知っていますか?
java - Sonar (jacoco) + jmockit スパム (例外あり)
私は本当にいらいらし始めているエラーに直面しています。
これが私が持っているものです: 1) JaCoCo をカバレッジ ツールとして使用する Sonar 3.5。2) モックを使用してテストを実行するための Jmockit lib。3) Maven で自動化されたビルド プロセス。
したがって、最初に実行すると問題ありませんmvn clean install
。次に実行するmvn sonar:sonar
と、ここで何が起こっていますか:
- Jmockit は、必要なクラスをインストルメント化するようです。
- JaCoCo は、Jmockit によって既に計測されているクラスを計測することはできず、既に計測されているクラスを計測することは不可能であると言って、膨大な量の例外を吐き出します。ただし、ソナーはそのようなシナリオに対して有効な出力を持っているようです。
最初の質問は、そのような例外をどうにかして抑制することはできますか? CI システムのログ ファイルのサイズが50Mb
(!) に達しているため、これは非常に重要です。これは受け入れられません。CI マシンでは、このようなログによって多くの空き領域が消費されます。
私が持っている例外は次のとおりです。
そのような例外の抑制が不可能であると仮定して、私はそれを少し調査し、JaCoCo (Sonar が使用するツールと、既にインストルメント化されたクラスをインスツルメントできないツール) がoffline instrumentation
(AFAIK Sonar どちらもサポートしていない) ようなモードを持っていることを発見しましたこれoffline instrumentation
またはそのような警告を抑制することができます)。このことは、まさにそのような場合に使用するように設計されています。そこで、Maven で JaCoCo をプラグインとしてセットアップしようとしましたが、JaCoCo が実行ファイルを見つけられないため、これを行うことができませんでした。実行mvn clean install
すると、次のエラーがポップアップ表示されます。
[INFO] --- jacoco-maven-plugin:0.6.2.201302030002:report (report) @ webservice-mws --- [INFO] 実行データファイルがないため、JaCoCo の実行をスキップしています
私が間違っていなければ、この実行ファイルは JaCoCo プラグインの RESULT です。私は完全にイライラしており、これをどうしたらよいかわかりません。
誰かがそれで私を助けることができれば、それは大歓迎です!
前もって感謝します!
JaCoCo プラグインの pom.xml 設定:
configuration - Sonar 3.4.1 構成で CodeCoverage カテゴリが表示されない -- なぜですか?
Sonar 3.4.1 を使用していますが、一般設定の構成に CodeCoverage 設定が表示されません。
GeneralSettings パネルで CodeCoverage が言及されていないこの状況を見た人はいますか?
eclipse - ant jacoco と junit を使用した無効な列名 $JACOCODATA
テスト ケース レポートの生成に jacoco を使用しています。しかし、プロジェクトのビルド中に次のようなエラーが発生します。
この Jacoco 列がクエリに自動的に追加されますが、クエリに含まれていません..なぜそれが起こっているのですか?
emma を使用して試したところ、これは .. に置き換えられてい$VRC
たため、同じエラーが発生しました..
java - MATLAB からの Java コード カバレッジ
できれば EclEmma/jacoco を使用して、MATLAB から実行される Java コードのコード カバレッジを測定したいと考えています。残念ながら、MATLAB には独自のカスタム クラス ローダーがあり、スレッド コンテキスト クラス ローダーを使用しないため、オンザフライ カバレッジ計測を実行する明確な方法はありません。jacoco を使用して jar のオフライン インストルメンテーションを使用しようとしましたが、得られたのは空のデータ ファイルだけでした。
MATLAB から実行したときの Java コード カバレッジの測定に成功した人はいますか? もしそうなら、どのように測定しましたか?
java - Java 7 と spring-instrument で Jacoco を実行するには?
Java 7 で cobertura を使用すると問題が発生したため、 Jacoco を試しています。私のプロジェクトには、親プロジェクトpom.xml
とサブ プロジェクトがあります。あるプロジェクトでは、Spring を使用していくつかの統合テストを実行しています。そのため、このプロジェクトの にこのプラグインがありますpom.xml
。
私はJava 7を使用しているので、このプラグインを親に設定しましたpom.xml
:
今、私がmvn clean install
すべてのプロジェクトを使用しているとき、/target
フォルダにこのファイルがあります: jacoco.exec
; しかし、を使用するこのプロジェクトには、spring-instrument
このファイルがありません。問題は、Jacocoasm
がofを使用したいのにspring-instrument
失敗することだと思います (ただし、私が正しいかどうかはわかりません)。
ジャココ版は0.6.3.201306030806
。
この場合、Jacocoが計測に失敗するのはなぜですか? どうすればこれを克服できますか?
コードを 1.6 にコンパイルするようにmaven-compiler-pluginを構成できれば、 maven-surefire-pluginプラグインは必要なくなるのではないかと考えました。それは理にかなっていますか?
java - リソースを試すための8つのブランチ - jacocoのカバレッジは可能ですか?
リソースでtryを使用するコードがいくつかありますが、jacocoでは半分しかカバーされていません。すべてのソース コード行は緑色ですが、8 つのブランチのうち 4 つだけがカバーされていることを示す小さな黄色のシンボルが表示されます。
すべてのブランチが何であるか、およびそれらをカバーするコードを記述する方法を理解するのに苦労しています。3ヶ所投げ可能PipelineException
。これらはcreateStageList()
でprocessItem()
あり、暗黙のclose()
- 例外をスローしない、
- から例外をスローする
createStageList()
- から例外をスローする
processItem()
- から例外をスローする
close()
processItem()
andから例外をスローするclose()
他のケースは考えられませんが、まだ 8 つのうち 4 つしかカバーしていません。
なぜ8つのうち4つなのか、8つすべてのブランチにヒットする理由を誰かが説明できますか? 私はバイトコードの復号化/読み取り/解釈に熟練していませんが、おそらくあなたは... :)私はすでにhttps://github.com/jacoco/jacoco/issues/82を見ましたが、それも問題もありませんそれは非常に助けを参照しています(これはコンパイラが生成したブロックによるものであることに注意することを除いて)
うーん、これを書き終えたとき、上記で述べたようにテストされていない可能性があるケースについて考えました...正しく理解できたら回答を投稿します。この質問とその答えは、いずれにしても誰かを助けると確信しています。
編集:いいえ、見つかりませんでした。(catch ブロックによって処理されない) RuntimeExceptions をスローしても、それ以上の分岐はカバーされませんでした。