ソフトウェア開発は、数人あるいは、もっとたくさんの人でチームやプロジェクトを組んで開発するけど、別々の人が作ったものをいきなりつなげて動かそうとしても、大体うまく動かないのよね。だから、ちょっと作っては全体できちんと動作するかどうか確認して、またちょっと作っては確認して…… というふうに少しずつ確認しながら開発を進めていく手法が生まれたの。それが、「継続的インテグレーション」(CI)よ。
ふーん。ソフトウェア開発も試験対策と同じで、毎日の努力の積み重ねが大切なんだね。ちょっとずつ対策しておけば、いざテストっていうときに全然点が取れずに補習ってこともないものね。
継続的インテグレーションをサポートしたツールを利用すると、テストやメトリクス情報を自動的に取得してグラフ化してくれたりして、より定量的に品質を管理できます。例えば、次の画面は「Jenkins」っていう継続インテグレーションツールの画面ですけど、コーディング規約違反数のカウントや、テスト結果やカバレッジの集計を行ってくれます。
コーディング規約違反? かばっじ??
「コーディング規約違反のチェック」は、書かれたプログラムが、プログラムの書き方の規約、つまり決まりごとに違反していないか確認することだよ。「カバレッジ」は実行されたテストがプログラムを網羅しているかどうかの指標ね。コーディング規約違反は校則違反の取り締まりで、カバレッジは試験の出題範囲が教科書を網羅しているかどうかのチェックだと思えばいいかしら。
へー、サイ○パスの“計測”に似ているのかなぁ。「あなたの出題範囲網羅係数は60です。受験対象ではありません」みたいな。
継続的インテグレーションを行うツールの中で最も有名なものの1つにJenkinsがあります。Webブラウザで簡単に設定できて、たくさんのプラグインでいろいろな機能を追加したり他のツールと連携できたりします。Jenkinsの詳細については、記事『「Hudson」改め「Jenkins」で始めるCI(継続的インテグレーション)入門』にも詳しく書いてあるので、読んでみてください。
Jenkinsのプラグインを導入すれば、この連載で紹介してきた、RedmineやGitと組み合わせて使えます。ALMiniumの最新版は、JenkinsとRedmine/Gitとの連携プラグインを導入しているから、RedmineとGitを組み合わせた環境を簡単に構築してくれます。Jenkinsのログインも、Redmineのユーザーが使えるように自動的にしてくれます。
じゃあ最初に、ALMiniumを利用したJenkinsのセットアップを、あるみちゃんに教えてもらうね。よろしく、あるみちゃん!!
承知しました。説明を始めます。ALMiniumのセットアップ方法は、すでに連載第3回の「スクラムやるならRedmineとALMinium!」で紹介してきました。基本的には、ここで紹介した通りにセットアップをしてけば良いのですが、最新版(OSはCentOSもしくはAWSのLinuxを利用)では、smeltコマンドを実行してインストールする途中で、以下のように聞いてきます。
Jenkinsをインストールしますか?[y/N]
ここで「y」と答えれば、Jenkinsと必要なプラグインをインストールしてくれます。インストールしたJenkinsには、以下のURLでアクセスできます。
たったこれだけ? 簡単だね〜。
ここからは、ALMiniumをインストールしたホストを「192.168.1.10」と仮定して説明してもらうね。ホストの設定は、みんなの環境に置き換えて聞いてね。
Jenkinsを使ってみるには、プロジェクトやビルドファイルを用意しないといけなくて大変だから、筆者が用意してくれたサンプルのプロジェクトをGitにインポートして使ってみましょう。
まずRedmineのプロジェクトとサンプルのリポジトリを用意します。連載第5回の『「うわっ…私のバージョン管理、ダメ過ぎ…?」を解決するGitの使い方“超”入門』を参考にRedmineプロジェクトとGitリポジトリを作成してください。
作成時(もしくは作成後に)モジュールの設定で「Hudson」にチェックを入れてください。これで、そのRedmineプロジェクトでJenkinsが使えるようになります。
Jenkinsは昔、「Hudosn」という名前で公開されていたの。Redmineのプラグイン名は、その名残で「Hudson」という名前になっているけど、注意してね。
次に、リポジトリの準備を行います。https://github.com/okamototk/maven-sample.gitにサンプルで利用できるプロジェクトが用意されています。下記の手順で、RedmineのGitリポジトリにインポートしてください。
このサンプルはJenkinsがあれば、RedmineやALMiniumがなくても試せるようになっているよ。Jenkins単独で試したい場合は、下記の4つのプラグインをJenkinsにインストールしてみてね。
これで準備は完了ね。具体的な使い方は、Hud美ちゃんに教えてもらうわね。よろしくー。
Copyright © ITmedia, Inc. All Rights Reserved.