2016-11-25 12 views
1

JacocoでカバーされたUIアプリケーションを起動する.shを書く必要があります。終了時にジャココレポートを生成する必要があります。Jacocoがコマンドラインで報告する

私はこの単純なコマンドでjacoco.execを生成することはできませんよ。

java -jar ../binaries/editor.debug/application.jar -javaagent:/atgl/products/jacoco/0.6.3/lib/jacocoagent.jar=destfile=jacoco.exec 

コマンドの最初の部分は正常に動作し、プログラムを起動しますが、-javaagentオプションは、レポートを生成しません。プログラムは起動しません。 構文エラーが発生した場合、まったく同じ動作になります。

私のコマンドに何が問題なのですか?

第2に、このコマンドは.execファイルを作成します。コマンドラインで.htmlレポートを生成するにはどうすればよいですか?

答えて

1

問題は、-javaagentオプションの位置にありました。これは最初の位置にある必要がありました。

java -javaagent:/atgl/products/jacoco/0.6.3/lib/jacocoagent.jar=destfile=jacoco.exec -jar ../binaries/editor.debug/application.jar 

その後、コマンドラインでレポートを生成することはできません。私はantファイルexectoreport.xml do_jacoco_reportsを作成しました。このルールはexectoreport.shスクリプトによって起動され、アプリケーションの自然な終了後に呼び出されなければなりません。

1

JaCoCoの使用には、2つのステップが含まれます.1つは、カバレッジ情報の収集とレポートの生成です。あなたのコマンドに何も問題はありません。.execファイルにカバレッジ情報を集めます。その後、またはMavenを使用してレポートを生成するか、またはJaCoCo APIsを使用して独自のレポートジェネレータを作成することができます.JaCoCoは、レポート作成用のすぐに使用できるコマンドラインインターフェイスをまだ提供していませんが、example of API usage for report generationです。

+1

あなたの答えをありがとう。しかし、私は.execファイルを生成することさえできません! jacocoエージェントで実行する前にアプリケーションを特別な方法でコンパイルする必要がありますか?私は.execファイルを持っていれば、レポートを生成するためにantを使うと思います。 – Skartt

+0

精度:-javaagent:/atgl/products/jacoco/0.6.3/lib/jacocoagent.jar=destfileと入力すると.execファイルが生成されます。 eclipseのVM引数フィールドの= jacoco.exec。コマンドラインでは動作しません – Skartt

0

jacoco 0.7.9バージョンのjacococli.jarを使用すると、コマンドラインを使用してレポートを生成できるようになりました。私は同じことを試みていて、コマンドラインを使ってレポートを生成することができました。 jacoco.execファイルを生成することができれば、以下のコマンドを使用してレポートを生成することができます。

java -jar "your local path/jacococli.jar" report "your local path/jacoco.exec" --classfiles "project path to class files" --html "local path\jacoco-report" --name myReport --sourcefiles "project path\src\main\java" 

レポートはHTML形式で表示する必要があります。参考[http://www.jacoco.org/jacoco/trunk/doc/cli.html]

関連する問題