0

私はgrails 1.3.7を使用しています。コードカバレッジプラグインをインストールしました。そして、cobertura 1.9.4.jarとasm2.2.3.jarをSTSワークスペースのプロジェクトlibフォルダーに配置しました。コマンドを使用しgrails test-app -coverageて実行しています。 Junitテストケース全体を実行し、ターゲットのCoberturaフォルダーにレポートを生成します.しかし、生成されたHTMLコードでは、ゼロクラスを示し、他のすべてはゼロです.

コンソールでは、テストケースを実行した後、このように 0 クラスの読み込みと 0 クラスの保存が表示されます。

同様に、BuildConfig.groovy で追加しようとしましたが、

coverage { sourceInclusions = ['grails-app/target*'] }

パスを解決していません

では、この問題を解決して正しいcoberturaレポートを取得するにはどうすればよいですか..??

上記のコマンドを使用して実行している間、コード カバレッジ (cobertura) はクラスを自動的にインストルメント化するか、または手動で言う必要があります..??

私は、コメント行のドキュメントを介してcoberturaの計装参照を調べます..cobertura-instrumented.bat --destination ...これらのコメントを使用するとcobertura-instrumented.bat is not internal or external command、このエラーが発生するように使用されます..

これを修正し、このプラグインを正しく動作させて、0% ではなく正しい結果を得る方法..??

ありがとう..

4

2 に答える 2

0

テストスイートの実行と同時にアプリが実行されていないことを確認してください。Coberturaはコンパイルされたコードをインストルメント化する必要があり、アプリが実行されている場合はそれを妨げる可能性があります。

于 2013-01-02T19:13:26.167 に答える
0

コード カバレッジは、lib jar を asm2.2.1 から asm3.1 に変更し、asm-util.jar と oro.jar を追加した後の出力を正しく表示します。

于 2013-01-15T15:34:00.980 に答える