このエントリーをはてなブックマークに追加

JaCoCo Agentの利用

JaCoCo Agentを利用することでTomcatを利用時のカバレッジを取得することができ開発環境のeclipse上からtomcatを利用している場合でも利用可能です。
今回はeclipse上でtomcatを利用しているアプリのカバレッジを取得します。

0) 前提条件

  • tomcatがインストールされていること
  • eclipseがインストールされていること
  • eclipseよりtomcatの起動できること。(サーバ設定が完了していること)

1) setup

  1. 以下の場所からDLします。

    https://www.jacoco.org/jacoco/

    JaCoCo Agentは「jacoco-0.X.X.zip」に含まれていますので取得します。

  2. DLしたファイルを解凍します。

    解凍したディレクトリの配下にあるlibの中の「jacocoagent.jar」を利用します。

  3. 配置する場所はどこでも問題ありませんが今回はtomcatのlibの配下に配置します。

2) サーバへの設定

  1. eclipseのサーバタブよりtomcatの設定をダブルクリックし開きます。

    ../../_images/jaCoCo_setup01.png
  2. 「起動構成を開く」をクリックします。

    ../../_images/jaCoCo_setup02.png
  3. 引数タブを開きます。

    ../../_images/jaCoCo_setup03.png
  4. 「VM 引数」の欄に以下の内容を追加します。

    ../../_images/jaCoCo_setup04.png

    追加する内容

    -javaagent:/Applications/Eclipse_4.6.2.app/Contents/tomcat/8/lib/jacocoagent.jar="output=tcpserver,jmx=false"
    

    今回はeclipseからカバレッジを取得するためoutputをtcpserverとしていますがfileに出力することもできます。 「"output=tcpserver,jmx=false"」設定できる値は以下のページを参照してください。

    https://www.jacoco.org/jacoco/trunk/doc/agent.html

    パラメータについてはダブルコーテーシォンにて囲う必要があります。

    追加後

    ../../_images/jaCoCo_setup05.png
  5. これでサーバ側への設定は完了です。

    通常通りサーバを起動することでカバレッジを取得することができます。

3) eclipseへの設定

eclipse上にてJaCoCoのデータを利用するには「EclEmma」を利用します。
インストールしていない場合には以下の手順にてインストールします。
すでにインストールしている場合には項番4から実施してください。
  1. 「ヘルプ」 → 「Eclipse マーケットプレース」

    ../../_images/jaCoCo_setup06.png
  2. 「EclEmma」を入力し「Go」を押下します。

    ../../_images/jaCoCo_setup07.png
  3. 「使用条件の条項に同意します。」を選択し、完了を押下します。

    ../../_images/jaCoCo_setup08.png

以上でeclipseへのインストールは完了です。

4) カバレッジの取得

  1. 「ウィンドウ」→「ビューの表示」を選択します。

    ../../_images/jaCoCo_setup09.png
  2. カバレッジのタブが表示されます。

    ../../_images/jaCoCo_setup10.png
  3. カバレッジのタブのエリアに右クリックし、「セッションのインポート」を選択します。

    ../../_images/jaCoCo_setup11.png
  4. 今回は起動しているtomcatのカバレッジを適時取得するため「」を選択します。

    ../../_images/jaCoCo_setup12.png
  5. カバレッジを取得する対象のパッケージを指定します。

    ../../_images/jaCoCo_setup13.png

以上でカバレッジの取得の設定は完了です。