SporkとRSpec2とautotestとCucumber+Capybara(webkit)とtwitter-bootstrap-railsを使うときのセットアップが長い
タイトルも長いけど許して。やめたげて。
もうね、慣れてないのもあるけど
rails newしてからそれぞれのgemを使うために必要なコマンドが多いんでまとめます。
ちなみに Rails3 です。
Gemfile:
# sqlite3 とかは省略してます group :development, :test do gem 'spork' # テスト加速用 gem 'rspec-rails' # BDD用 gem 'autotest-rails' # テスト自動化用 gem 'capybara-webkit' # JavaScript込みのViewテスト用 gem 'rails3-generators' # モデル生成時の自動テスト生成用 end group :test do # ここに置けって警告吐かれた。でもSpork起動時に結局怒られるっぽい? gem 'cucumber-rails' # インテグレーションテスト用 gem 'database_cleaner' # cucumberが要求する。明示的な依存ではないので書かなきゃいけない。 end group :assets do gem 'twitter-bootstrap-rails' # デザイン用 end
大体こんな感じ。
gemの依存関係にあからさまに期待しているので、必要最小限の記述になってます。多分動きます。
他にも使うものはあるだろうけど、最初から必要なものと、その中で設定が必要なものってこのくらいです、か?
叩くコマンド:
$ bundle install $ rails g rspec:install # for RSpec2 $ vi .rspec # ... --drb --colour # ... $ spork --bootstrap # for Spork $ touch .autotest # for autotest $ rails g cucumber:install ja capybara # for Cucumber using Capybara $ vi features/support/env.rb # ... # Capybara defaults to XPath selectors rather than Webrat's default of CSS3. In # order to ease the transition to Capybara we set the default here. If you'd # prefer to use XPath just remove this line and adjust any selectors in your # steps to use the XPath syntax. Capybara.default_selector = :css Capybara.javascript_driver = :webkit # この行を追加 $ rails g bootstrap:install # for TwitterBootstrap $ rails g bootstrap:layout application fluid # ... # ここから実際の起動とか $ rake RAILS_ENV=test db:migrate # データベースを使わなくても、一度 db:migrate させないと激怒される $ spork # テストサーバ起動 $ AUTOFEATURE=true autotest # AUTOFEATURE=true としないとCucumberをヲチしてくれない。.autotestファイルに書けないものか。
多いです。
これだけの資産を利用しながらこの程度で済んでいるのはむしろ少ないんだと思いますが、
レールに寝そべっているとこれでさえ多く感じる。Rails……恐ろしい子……!!
ちなみに capybara-webkit を使う際にqt4のライブラリを参照するので、
bundle install する前に以下のコマンド (Ubuntu用) を叩いておかないとコケます。
ただ余計なものまで入っているかも知れないので情報求む、です。
$ sudo apt-get install qt4-qmake # 下のコマンドで一緒に入るかも
$ sudo apt-get install qt4-dev-tools
参考にさせてもらったところ: