継続的インテグレーション入門 開発プロセスを自動化する47の作法

"Continuous Integration: Improving Software Quality And Reducing Risk(asin:0321336380)"の翻訳本のようですね。去年の10月に辛抱たまらず原書買って読んでないオレの立場は...。:-)


今やCIサーバと言えばHudsonというくらいにHudsonが有名だけど,原書ではあまりHudsonのこと取り上げてなかったような記憶があるな(今,手元に原書無いんで未確認)。翻訳本には追補とかあるのかな?ちょっと本屋で探してみよう。


そうそう,久しぶりに原著者のサイト見に行ったらURL変わってた。
http://integratebutton.typepad.com/integrate-button/


そんなワケで以前紹介したHudsonのデモムービーは,こちら。
http://integratebutton.typepad.com/integrate-button/2009/07/new-video-use-a-continuous-integration-server-using-hudson.html


しっかし,ホントこうゆう世界から縁遠くなったなぁとしみじみ。

継続的インテグレーション入門

継続的インテグレーション入門


(追記)本屋で見て来た。思ったとおり原書に忠実なため,Hudsonのハの字も出ておりませんでした(CruiseControlが話の中心)。だからだね,あくまで「CIって何したら良いの?」というヒントを得る本と割り切って,その実践ではネットを漁ってHudsonの使い方を調べた方がいいよっ。

Selenium Inspector

http://seleniuminspector.org/


Selenium RCのJava Client Driverより便利なAPI集。HTMLの要素を指定してインスペクタ(ElementInspector)を作り,そいつがアサーションを実行できるので,素のSelenium RCより見た目がスッキリしてる。
Selenium IDE用の拡張モジュールはまだ無さげなので,ちまちまテストコードを書かなきゃダメってのがちと残念。


Seleniumも思う所&試してみたい事があるんで,機会があったら試してみる(ってこればっか)。
First look at Selenium Inspector | Vineet Manohar's blog

Analyzing Dataflow with IntelliJ IDEA

http://blogs.jetbrains.com/idea/2009/08/analyzing-dataflow-with-intellij-idea/


こうゆう事できるから「とりあえずJavaで組んどけ」って言いたくなる。
"Dataflow to This"はIDEA8から追加された機能で,メソッドの引数やフィールドがどこから連鎖して来たかをしらべてくれる機能だ(Call Hierarchyのパラメタ版って感じ)。といってもIDEA8のそれは,用がなかった/使い道がわからんかったの理由でほとんど使った事が無かったワケだが。


で,ちょうど大昔に誰ぞが組んだレガシーコードの解析してるんで,Maia EAPで強化されたそれを使ってみたんだが,すげー便利で鼻水出た。:-)
何が出来るかの詳細については,上記ブログのエントリを参照してほしいんだけど,IDEA9からは調査した対象(メソッド引数かフィールド)に「どんな値が設定されうるか」で分類できるんだと("Group by leaf expression"っての)。実際試してみると中には追いきれないのもあるけど,ちゃんと「args[1]」とか出て来て,どっから値が発生したのか追えてもうわろす,わろす。


相変わらずコードの解析させたら,頼りがいありまくりのIntelliJなんだが,これってソースがJavaだからってのが大きいんだよね。Groovyサポートもかなり良いセンいってんだけど,AnalyzeメニューのほとんどはJavaじゃないと反応しない。ま,仕方ないけど。:-(
そんなワケで,IDEの超強力なサポート込みでJavaの魅力なのだと,あらためて再認識してたりする。動的言語なGroovyにJava並みのIDEサポートは期待してないけど,せめてScalaJava並みになってほしいなって思う。
#今だとGroovyサポートのほうがScalaサポートより遥かに強力だったりする>IntelliJ