Cucumber の初期設定

Cucumber の初期設定で少しはまったので、メモ。環境は、Ubuntu 10.04, Ruby 1.8.7, Rails 2.3.8 です。主に、「はじめる! Cucumber」 に従っています。

まず、Cucumber をインストールします。


$ sudo gem install cucumber -v 0.9.4
$ sudo gem install cucumber-rails -v 0.3.2
もしかしたら、ヘッダーファイルが見付からない、などのエラーメッセージが出るかもしれません。私の場合は、前もって次のようにしておく必要がありました。

$ sudo apt-get install libxml2-dev
$ sudo apt-get install libxslt1-dev

次に、Railsアプリケーションを生成します。


$ rails my_app
$ cd my_app
このアプリケーションで使う Cucumber の初期設定をします。ここでは、日本語、Webrat、RSpec とします。

$ ./script/generate cucumber ja --webrat --rspec
Cucumber関連の設定ファイル等が生成されています。
必要な gem をインストールしましょう。

$ sudo RAILS_ENV=cucumber rake gems:install
DB接続を確認します。

$ rake db:create
$ rake db:migrate

いよいよ、Cucumber を動かしてみます。


$ rake cucumber
私の場合は、ここで、次のようなエラーメッセージが出ました。

Missing these required gems:
cucumber-rails >= 0.3.2
rspec-rails >= 1.3.2
これらの gem がインストールされているにも関わらずです。

$ gem list | egrep "(cucumber|rspec)-rails"
cucumber-rails (0.3.2)
rspec-rails (2.3.1)
どうやら、これは、config/environment.rb に次の2行を付け加えると、うまくいくようになるようです。

  config.gem 'cucumber-rails',   :lib => false
  config.gem 'rspec-rails',      :lib => false

このようにすると、


$ rake cucumber
で、0個のテストが実行されました。
その後少し使ってみましたが、特に問題なく動いています。