jenkinsでgradleを使ってJUnitのテストケースを実行する
環境
CentOS 6.6 java 1.8.0_66 jenkins-2.25 gradle-3.1
手順
gradleインストール
jenkinsでのgradle設定
ダッシュボード -> Global Tool Configuration
インストール済みGradle -> 「Gradle追加」
nameは任意、ここでは「Gradle3.1」としておく。
GRADLE_HOMEに「/usr/local/bin/gradle-3.1/」を設定。
※GRADLE_HOMEは環境により適宜変更する
自動インストールのチェックボックスは外す。
「Save」クリック
Javaプロジェクトのプロジェクトをワークスペースに配置
ジョブの左サイドメニューの「ビルド実行」をクリックし、ワークスペースを作成する。
その後、「ワークスペース」をクリックすると、「ディレクトリ内にファイルが存在しません」と表示される。
ワークスペースのディレクトリが生成されている事を確認、空ディレクトリ。
[root@localhost src]# ls /var/lib/jenkins/workspace/junit_test/
↓で作成したJUnitプログラムを持つJavaプロジェクトを今回利用。
gradleを使って簡単なJUnitテストケースを実行してみる。 - ボールを蹴りたいシステムエンジニア
/var/lib/jenkins/workspace/junit_test/
の配下に配置する。
こんな感じ
/var/lib/jenkins/workspace/junit_test/test/huga/HogeTest.java /var/lib/jenkins/workspace/junit_test/lib/junit-4.11.jar /var/lib/jenkins/workspace/junit_test/build.gradle
jenkinsのワークスペースにも表示される事をブラウザで確認。
http://192.168.10.111:8008/job/junit_test/ws/
ビルドを実行してみる。
左サイドメニューのビルド履歴にビルド結果が表示される。
#{数字}をクリックして結果を閲覧。
※{数字}は実行番号順
コンソール出力をクリックしビルド結果を閲覧。
こんな感じ
Building in workspace /var/lib/jenkins/workspace/junit_test [Gradle] - Launching build. [junit_test] $ /usr/local/bin/gradle-3.1/bin/gradle Starting a Gradle Daemon (subsequent builds will be faster) :compileJava UP-TO-DATE :processResources UP-TO-DATE :classes UP-TO-DATE :jar :assemble :compileTestJava UP-TO-DATE :processTestResources UP-TO-DATE :testClasses UP-TO-DATE :test UP-TO-DATE :check UP-TO-DATE :build BUILD SUCCESSFUL Total time: 6.54 secs Build step 'Invoke Gradle script' changed build result to SUCCESS Finished: SUCCESS
BUILD SUCCESSFULと出てビルドが成功した事が確認出来る。
ビルドエラー1
コンソール出力で以下のようなエラーが出た場合は、Global Tool Configuration -> インストール済みGradleでGRADLE_HOMEが設定されてないと思われるので再度設定する。
Building in workspace /var/lib/jenkins/workspace/junit_test [Gradle] - Launching build. [Gradle] - [ERROR] Can't retrieve the Gradle executable. Build step 'Invoke Gradle script' marked build as failure Finished: FAILURE
ビルドエラー2
以下のエラーは'/var/lib/jenkins/workspace/junit_test/build.gradle'のMD5ハッシュの作成に失敗しました。
という事。
恐らくbuild.gradleのファイル権限がない?
FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring root project 'junit_test'. > Failed to create MD5 hash for file '/var/lib/jenkins/workspace/junit_test/build.gradle'. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED
パーミッションを確認すると
[root@localhost junit_test]# ls -lht /var/lib/jenkins/workspace/junit_test/build.gradle ----r-x---. 1 root root 203 10月 15 14:04 2016 /var/lib/jenkins/workspace/junit_test/build.gradle
読み込み権限付与で解決した。
[root@localhost junit_test]# chmod a+r /var/lib/jenkins/workspace/junit_test/build.gradle
テスト結果レポートは下記URLから確認出来た
http://ホスト:ポート/job/プロジェクト名/ws/build/reports/tests/test/index.html