インターンの増田です。
Railsの"JavaScript Testプラグイン":http://dev.rubyonrails.com/svn/rails/plugins/javascript_test/ に付属しているrakeタスク(test:javascripts)は
テストするファイルやブラウザを指定することができません。
これではテストと実装を交互に繰り返しているときに関係ないテストまですべてのブラウザで実行されてしまってやっかいなので、rakeタスクを書き直してみました。
desc "Run tests for JavaScripts"
task 'test:javascripts' => :environment do
JavaScriptTest::Runner.new do |t|
t.mount("/", RAILS_ROOT)
t.mount("/test", RAILS_ROOT+'/test')
t.mount('/test/javascript/assets', RAILS_ROOT+'/vendor/plugins/javascript_test/assets')
Dir.glob(ENV['TEST'] || 'test/javascript/*_test.html').each do |js|
t.run(File.basename(js,'.html').gsub(/_test/,''))
end
if ENV['BROWSER']
t.browser(ENV['BROWSER'].to_sym)
else
t.browser(:safari)
t.browser(:firefox)
t.browser(:ie)
t.browser(:konqueror)
end
end
end
これに置き換えると、以下のようにコンパクトにテストできます。
rake test:javascripts TEST=test/javascript/foo_test.html BROWSER=firefox