[読書] はじめる! Cucumber

Cucumberについての情報をできるだけたくさん集めるために読んでみました。

目次

  • 第1章 はじめる! Cucumber
  • 第2章 1周目:ミニマム実装と開発環境準備
  • 第3章 2周目:日本語化する
  • 第4章 3周目:認証機能を実装する
  • 第5章 4周目:ユーザのメッセージを表示する
  • 第6章 5周目:他のユーザをウォッチする
  • 第7章 6周目:ウォッチ中メッセージを一覧する
  • 第8章 7周目:特に重要なテストを実行する
  • 第9章 終わりに

内容

本書は、シンプルなミニブログをBDDのプロセスに従って開発する手順を追いながら、Cucumberについて解説している本です。

単純な使い方にだけではなく、FeatureをDRYに保つための工夫などが、100ページ強のボリュームの中に収まっています。

感想

BDDのプロセスに従った構成

先にも書きましたが、シンプルなRailsアプリケーションを実際に開発しながら、Cucumberについての解説が行われるため、「なんのために使うのか」「使うとどう嬉しいのか」が読んでみて非常にわかりやすかったです。

ドキュメントの機能一覧を見ても、最初はなかなかイメージがわかないもの。

こういったチュートリアル形式で書いていただけると、実際の利用シーンをイメージしやすいのでいいですね。

対象環境が少し古い

対象としている動作環境が、Rails 2.3.10、cucumber-rails 0.3.2と少し古いこともあり、2012年11月29日現在の最新版では掲載されているサンプルが動かないのが少し残念なところ。

最新のcucumber-railsとの違いで一番目立つのは、web_steps.rbが存在しているかどうがだと思います。web_steps.rbは、可読性やメンテナンス性の低いFeatureを書いてしまう原因になっているということで、cucumber-railsのバージョン1.1.0から削除されています。

書いてある内容を活かすためには、そのあたりの違いを認識して理解する必要があり、スムーズに読み進めること少し難しく感じることがありました。

Featureはすべて日本語で記述

掲載されているサンプルのFeatureはすべて日本語で記述されています。

「日本語でテストコードが書ける」というのがCucumberの特徴のひとつだとは思うのですが、僕自身は、日本語にするとかえって読みづらくなるのではないかと思ってる人です。

なので、いつもFeatureは英語で書くように心がけているのですが、その視点から日本語のFeatureを見ると全く別物のように見えてしまい、サンプルコードを理解するのに少し時間がかかってしまったような気がします。

Cucumberの日本人ユーザーで、Featureを日本語で書く人って結構たくさんいるのでしょうか。みなさんどういう理由で日本語を使って書いているのか、勉強のために一度伺ってみたいです。

まとめ

Cucumberの全体像を把握・再確認するために役立つ、非常にコンパクトな書籍でした。

が、内容が古くなってしまっているのが、一番の残念なところ。Cucumberまわりの仕様の変化ってスピード早いんですね。最新版の発行からまだ1年ちょっとしかたってないのに。

改訂版があるなら、その時はまた読んでみたいと思いました。

それではー。