問題タブ [cobertura]
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.
maven-2 - mvnサイトのビルド中のMaven2マルチプロジェクトCoberturaレポートの問題
mvn サイト構築の一環として、Cobertura テスト カバレッジ レポートを実行しようとしているマルチプロジェクトがあります。子プロジェクトで Cobertura を実行することはできますが、ユニット テストでヒットしたコード行がレポートで強調表示されているにもかかわらず、誤って 0% のカバレッジがレポートされます。
mvn 2.0.8 を使用しています。mvn clean site、mvn clean site:stageおよび を実行してみmvn clean package siteました。テストが実行されていることはわかっています。それらは確実なレポート (txt/xml とサイト レポートの両方) に表示されます。構成に何か不足していますか? Cobertura はマルチプロジェクトで正しく動作しませんか?
これは親 .pom にあります:
子.pomsで次のものを使用して、または使用せずに実行してみました:
ビルドの出力でこれを取得します。
レポートは次のようになります。

java - Cobertura は、コードがカバーされたことを認めることを拒否します
Maven (2) Cobertura プラグインを使用してコード カバレッジに関するレポートを作成しています。メソッドで使用している次のスタブがあります。
例外などをログに記録する必要があることはわかっていますが、それは今のポイントではありません... Cobertura は、スタック トレースが出力された後の行がカバーされていることを認めることを拒否しています。つまり、System.err.printlnステートメントの前に「}」が付いている行は、カバーされているものとして表示されていません。以前は、メソッドの終了中かっこはカバーされているものとして表示されていなかったため、System.errステートメントが表示されていました。cobertura の maven プラグインに、System.err.printlnステートメントがカバーされているため、終わりのブレースがカバーされている必要があることを納得させる方法はありますか?
そうそう、モック セキュリティ マネージャーを使用してセキュリティ例外をスローします。これは、System.exit呼び出し後にテストを実行し続けるための最も簡単な方法であるためです。
java - CoberturaをM2ビルドに失敗させてコードカバレッジを低くする方法
回線またはブランチのカバレッジが指定されたしきい値を下回った場合に失敗するようにWARプロジェクトビルドを構成しようとしています。優れた本JavaPowerToolsの455ページに記載されている構成を使用していますが、成功しませんでした。これが私のプロジェクトのMaven2POMの関連するスニペットです。
私が言ったように、カバレッジレポートは正常に機能しますが、問題は、回線またはブランチのカバレッジが指定されたしきい値を下回っている場合に、「インストール」の目標が失敗しないことです。誰かがこれを機能させていますか?もしそうなら、あなたのPOMはどのように見え、どのバージョンのCoberturaとMavenを使用していますか?Maven2.0.9とCobertura2.2を使用しています。
私はグーグルでCoberturaのドキュメントを読んでみましたが、運がありません(後者は控えめに言ってもまばらです)。
java - Coberturaレポートを含むMavenサイトの生成
すでにMavenを介してサイト生成を行っているプロジェクトがいくつかあり、それらにcoberturaレポートを統合したいのですが、実行していると思われるMavenの目標では、ローカルプレビューが生成されません。サイト。pomの変更をリポジトリにコミットし、壊れたサイトを生成する前に、それらが正しく生成されていることを確認したいと思います。
以下は、Maven Poms(親とモジュール)に追加したものですが、実行したときに表示されるサイトにmvn site:runは、coberturaレポートが含まれていません。
coberturaレポートを使用してサイトを生成するには、どのMavenコマンドを使用する必要がありますか?または、サイト生成にcoberturaレポートを含めるには、(さらに)何を追加する必要がありますか?
java - Cobertura/Emma を Eclipse アプリケーションとうまく連携させるにはどうすればよいですか?
私の会社は、Buckminster を使用するようにビルド システムをアップグレードしている最中です (これはうまくいきました)。当然のことながら、管理者は、コードの作成中に使用するメトリックの一部を自動的に生成できれば、それを望んでいます。これらのメトリックの 1 つは、単体テストのカバレッジです。
PDE ベースの以前のビルドでは、コンテキスト内のすべてのプラグインを解析し、それらの内部でテスト クラスを検索し、すべてのテスト ケースをより大きなスイートに放り込み、JUnitResultFormatter.startTestSuite(). その過程で、特定のメタデータ (著作権表示など) に対する自家製のテストと、パッケージの依存関係に対するテストが追加されます。
テスト アプリ用に製品をエクスポートし、選択したカバレッジ ツールを使用して計測し、実行するだけでよいようです。ただし、両方のカバレッジ ツールが、処理しているクラスパス全体を知りたいようです。これらのツールのいずれかを、ビルド ワークスペース全体で jar と依存関係を探し回ることなくうまく機能させることはできますか?
maven-2 - Mavenを使用してjunitsとcoberturaを実行する
私たちのプロジェクトでは、Mavenを使用してjunitsとcoberturaの両方を実行します。私が直面している問題は、
- junitテストケースは2回実行されます。1回はjar作成プロセスの前で、もう1回はcoberturaカバレッジレポートを生成するためです。coberturaとjunitsをantで実行する場合、junitsを実行するのは1回だけです。これは、coberturaがjunitsと一緒に実行されるためです。上記のケースをMavenで構成する方法はありますか?「maven.test.skip」プロパティを使用してjunitをスキップできることはわかっています。しかし、これを行うと、junitxmlおよびhtmlファイルレポートを表示できません。
- また、Mavenで、バッチまたは並列で実行するようにjunitを構成する方法は?
ありがとう!
java - Cobertura でコード カバレッジからメソッドを除外する
コードを Cobertura カバレッジ レポートに含めないようにする方法はありますか? カバレッジ レポートに含めてはならないメソッドがいくつかあるため、カバレッジ数を減らしません。
Clover にそのような機能があることは知っていますが、Cobertura に似た機能は見つかりませんでした。
maven-2 - maven coberturaによって生成されたクラス
カバレッジ レポートを生成するために maven cobertura プラグインを使用していますが、何らかの理由でインストルメント ゴールが無限ループに陥ります。
私のクラス ディレクトリ (bin という名前) で、無限ループが発生し、ディレクトリが作成named generated-classes/cobertura/generated-classes/coberturaされます ... インストゥルメント ゴールを実行している限り、何度も何度も作成されます。各 cobertura ディレクトリ内には、インストルメント化されたクラスがあります。なぜこれが発生するのでしょうか?
maven-2 - ハドソン コベルチュラ レポート 0
cobertura ターゲット maven を実行すると、レポートに常に 0% が表示されるという問題があります。junit テストをフォークしようとしましたが、うまくいきませんでした。pom のレポート セクションとビルド セクションで cobertura プラグインを構成してみました。また、サイトとパッケージ フェーズの両方にバインドしてみました。何かご意見は?
関連するメモとして、hudson 内で Cobertura でテストを実行すると、junit プラグインが各テストが 2 回実行されたと報告することにも気付きました (これにより、実行として報告されるテストの数が 2 倍になります)。これを回避する方法はありますか?
ありがとう、
ジェフ