概要
konachaによるCoffeeScriptのテスト
詳細
konachaによってCoffeeScriptをRSpecライクな記法でテストします。
設定
・Gemfilenに下記を追加
gem "konacha", "~> 3.0.0"
・Bundlerの実行
bundle
・spec/javascriptsディレクトリを作成
・config/initializers/konacha.rbを作成。今回はドライバをpoltergeistにします。
Konacha.configure do |config| require 'capybara/poltergeist' config.driver = :poltergeist end if defined?(Konacha)
テスト実行コマンド1
bundle exec rake konacha:serve
ブラウザからhttp://localhost:3500/にアクセスするとテスト実行。
ブラウザをリロードするたびに再実行。
テスト対象をURLに指定すれば、個別のテストを実行。
例えば
http://localhost:3500/hoge_spec
テスト実行コマンド2
bundle exec rake konacha:run
自動的にブラウザが起動+テスト実行+停止になる。
RSpec同様に方法で個別実行が可能
bundle exec rake konacha:run SPEC=hoge_spec
サンプル
app/assets/javascripts/hoge.js.coffee
class @Hoge @hige: (value) -> document.write value "hoge:#{value}"
spec/javascripts/hoge_spec.js.coffee
#= require hoge describe "Hoge#hoge", -> it "hoge return'hoge:hige'", -> # hoge = new Hoge() Hoge.hige("hige").should.eql("hoge:hige")
CUI出力
rake konacha:run SPEC=hoge_spec . Finished in 0.00 seconds 1 examples, 0 failed, 0 pending