テストを実行しているときに "Could not find a JavaScript runtime." が出てしまう場合の対処法について
Railsの開発をしている際に、rbenv
を利用しながら開発をしているのですが、ちょっとしたトラブルがあり、新しく開発環境を一新しました。
そのとき、bundle install
をしたあとに、./bin/rake test
を動かしていると、下のようなエラーが出てしまいます:
FoobarsControllerTest#test_should_get_new:
ActionView::Template::Error: c See https://github.com/sstephenson/execjs for a list of available runtimes.
(in /home/esehara/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/turbolinks-2.5.3/lib/assets/javascripts/turbolinks.js.coffee)
app/views/layouts/application.html.erb:6:in `_app_views_layouts_application_html_erb__3074344629272133642_70077899278000'
test/controllers/foobar_controller_test.rb:16:in `block in <class:FoobarsControllerTest>'
以前の環境では、上記のようなエラーは発生していなかったと記憶しています。このような、execjs
が必要になってしまう理由は一体なんなのでしょうか。また、これに対しての根本的な対処法とはどのようなものでしょうか。
参考のため、以下のrbenv
の環境でbundle install
を行いましたが、どれを使ってもエラーとなってしまいます:
ruby 2.1.0
ruby 2.2.0
ruby 2.2.1
このエラーの解決方法についての、正しい対処法があれば、是非教えてください。