カバレッジの計測(アプリケーションサーバーの起動・操作)[Tomcat編]

  1. 静的カバレッジファイルの作成とテストID設定で取得した -javaagent フラグをcatalina.bat/catalina.sh に設定します。

    Windows の場合
    [Apache Tomcat インストールディレクトリ]/bin/catalina.bat の “setlocal” 以降に以下の内容を追記します。

    setlocal (← setlocal はデフォルトで catalna.bat に定義されています。)
    
    if "%1"=="stop" goto skip_instrumentation
    
    set JAVA_OPTS=%JAVA_OPTS% [generated javaagent flag]
    
    :skip_instrumentation


    -javaagent フラグは 1 行で記述してください。

    例)
    setlocal
    
    if "%1"=="stop" goto skip_instrumentation
    
    set JAVA_OPTS=%JAVA_OPTS% -javaagent:"C:\Users\tmx\calculator\target\jtest\monit
    
    or\monitor\agent.jar"=settings="C:\Users\tmx\calculator\target\jtest\monitor\monitor\
    
    agent.properties",runtimeData="C:\Users\tmx\calculator\target\jtest\monitor\monitor\r
    
    untime_coverage"
    
    :skip_instrumentation


    Linux の場合
    [Apache Tomcat インストールディレクトリ]/bin/catalina.sh のスクリプト冒頭に以下の内容を追記します。

    if [ "$1" = "start" -o "$1" = "run" ]; then
    
    export JAVA_OPTS="$JAVA_OPTS [作成した -javaagent フラグ]”
    
    fi

    -javaagent フラグは 1 行で記述してください。

    例)
    if [ "$1" = "start" -o "$1" = "run" ]; then
    
    export JAVA_OPTS="$JAVA_OPTS -javaagent:"/home/demo/work/calculator/target/jtest/
    
    monitor/monitor/agent.jar"=settings="/home/demo/work/calculator/target/jtest/monitor/
    
    monitor/agent.properties",runtimeData="/home/demo/work/calculator/target/jtest/monito
    
    r/monitor/runtime_coverage""
    
    fi
  2. Tomcat サーバーを再起動して WEB ブラウザでURL (http://localhost:8080/Calculator/) にアクセスし、カバレッジを計測するためのアプリケーション操作を行います。

    Tomcat
    サーバーの再起動

    Windows の場合
    ① 停止

    [Apache Tomcat インストールディレクトリ]/bin/shutdown.bat

    ② 起動

    [Apache Tomcat インストールディレクトリ]/bin/startup.bat


    Linux
    の場合
    ① 停止

    [Apache Tomcat インストールディレクトリ]/bin/shutdown.sh

    ② 起動

    [Apache Tomcat インストールディレクトリ]/bin/startup.sh

    アプリケーション操作
    Calculator は四則演算をおこなうアプリケーションです。
    Param1、Param2 フィールドに任意の値を設定して四則演算用のボタンを押下します。

    演算結果を確認します。


  3. 操作完了後、Tomcat サーバーを停止します。