ボクココ

個人開発に関するテックブログ

Jenkins カエル本を読んで

今回は技術よりのお話。間違ってたらご指摘いただけると助かります。

まずは書評というより概要。


プログラミングをしていると、自分の作ったものが全体のどの部分に影響したかを把握するのが大変難しくなる。

その作った一部分がもしかして意外なところをバグらせている可能性がある。
チームを組んでいたら、もしそのバグを生みだしたら誰が問題を作ったのか明示的にする必要もある。
作った一部分は完成形でどのように見えるのか、常に見ていたいと思うだろう。

そんなときに便利なのがCI(Continuous Integration)ツール。
代表としてJenkinsがある。

作った一部分がバグにならない、という保証はどこでつくのか?・・・テストを書くことだ。
自分の意図する動作を予めコードで書いて確認しておくことで、後で同じ確認動作はそのテストコードを実行することで確認する。
もしいつかバグを生み出すコードを作ったとしても、そのテストコードで間違いが見つかったらその時点でそのコードはバグを生んでいることがわかる。

個人でプログラムを組んでいるとあまり便利性を感じないかもしれないが、これがチームになると状況は一変する。誰が書いたかわからないコードの細部まで読んで把握しなくても、テストが通っていればとりあえずそれは動くという認識がもてる。これは大きい。

そしてJenkinsはコミットするたびにビルドをしてくれたりする。
作った部分がすぐに製品として見えるのは顧客も自分も満足できる。

                                                                                                                          • -

さてこの本を読んでの感想。

一言でいうとJenkinsの取扱い説明書。
細かな環境構築からビルド方法、テスト実行タイミングなどJenkinsの様々な設定オプションを見ることができる。
Jenkinsでどんなことができるのか、ざっと見たい人か実際に構築している間にみるリファレンスとして使う役割かのどちらかがいいと思った。

なのでプログラミングスキル、とかテクニックとかそういう話はなかった。タイトル通り、Jenkinsを使う人のための本でした。

自分の当初の目的は、Jenkinsでいったい何ができるようになるのかを知ることだったので、その目的は達成できたかなと思う。

その中で特にイイ!と感じたのは、SaaSでJenkinsが使える Cloud bees
http://www.cloudbees.com/
ちょっとしたセットアップだけですぐにJenkinsの画面が見れてちょちょっと設定してCI環境を構築できる。
とりあえず登録してJenkinsの画面を作り、それの設定オプションなどをこの本と照らし合わせながら学習するといいかも。

今、趣味で作ってるRailsアプリは2.3.5でRSpecではなくtest:unitを使っているのでなかなか構築に手間取っている。自動テストとレポートはできるようにしたいのででき次第またブログに書こうと思う。