Sinatraのあらかると

記録することで、環境構築で悩まない。

続・Cucumberを実行せよ。

達人出版会の「はじめるCucumber」で第2章にあるコマンド。
そのままではたぶん実行できない。Ubuntuではlibxml2-devとlibxslt-devがいる。それから、コマンドを実行するとうまくいったんだ。
Macではrvmからgem install cucumberっていきたいんだけどGemfileからいったほうがうまくいく。


rails new ファイル名
cd ファイル名

Gemfileを開いて、

group :development, :test do
gem 'webrat'
gem 'capybara'
gem 'database_cleaner'
gem 'cucumber-rails'
gem 'cucumber'
gem 'rspec-rails'
gem 'spork'
gem 'launchy'
end

を一番下の行に追加する。

そして、
bundle install

次に、

rails generate cucumber:install

または

rails generate cucumber:install ja --capybara --rspec

とするとファイルが展開される。

それから、テストファイルを作成する。

rakeコマンドを使ってtaskのエラーがでたら、
Gemfileと同じ場所にRakefileがあり、


module ::Piyo ## <= アプリケーション名に合わせて変更
class Application
include Rake::DSL
end
end

module ::RakeFileUtils
extend Rake::FileUtilsExt
end

を追加するといい。
ウェブにドキュメントがあるとうまくいく。
私は現在、テストファイルを作成中。

追伸:マイグレーションをcucumberとrspecを入れた状態でするとエラーになるのはdatabase cleanerを実行しているから?
どうやらこいつは、データベースのデータを消すらしい。

ほかのファイルでcucumber rpsecをbundle install しないで試したらマイグレーションは成功したんだけど。

だから、バックアップデータに戻したんだ。


動作環境
snowleopard
rvm
ruby-1.9.2-p180

引用先
Cucumber and Rails3
http://groups.google.com/group/cukes/browse_thread/thread/
f583c582d48ccf0e

Rakeでundefined method 'task'というエラーがでたときの対処
http://3db.jp/wiki/tadanomemo/memos/2011/05/22/
rake0.9.0_error_ruby_rails_task

追記:どうやらrvmに問題があったみたいだ。
rbenvでバージョン管理するようになり環境を入れ直したら、エラーがなくなった。できるならrvmを再インストールするといいかも。

Copyright © 2007-2017 Takayuki Kamiyama. All Rights Reserved.