Jenkinsでperlモジュールの自動テストをできるようにする
Github+Jenkinsが多分出来るようになったので
GithubとJenkinsの連携をしてみる - としたにあんの左脳
GithubにPushして,Jenkinsが自動でテストしてくれるようにします.
MacにPerl開発環境を準備 - としたにあんの左脳
ローカルはこれでやってますが,jenkinsさんがテストできるようにしないといけないので,
デフォのcpanでCartonをインストールしてみました.
今回はテストでperlのMinillaでテンプレートを作ったモジュールのテストを行います.
kawasakitoshiya/jenkins_test · GitHub
テストはproveで.
--formatter TAP::Formatter::JUnit
というオプションをつけて結果をJUnit形式で出力するようにしています.
Jenkinsのビルドをshellで行います
carton install carton exec prove --formatter TAP::Formatter::JUnit
どういう風にテストが行われるかというと,
- Jenkninsのgit pluginによりGithubからcloneしてくる(/var/lib/jenkins/jobs/Test/workspace に展開)
- ビルドスクリプトが実行される
だと思います.
無事,テストが実行され,テストが成功しました.
失敗するテストを入れて,git_pushしてもちゃんとテストに失敗してくれたのでOKでしょう.