【RSpec】 Capybara + poltergeist にて rspec failed to detect theversion of the executable at '/usr/bin/phantomjs'
Ubuntu16.04上に構築しているRailsにてfeature spec (capybara + poltergeist) を走らせたときに
rspec failed to detect theversion of the executable at '/usr/bin/phantomjs'
とかなんとかエラーでこける。
ちょっと古いですがこちらを見ると
apt-get
でインストールしたphantomjsは削除して、npmで入れてるみたい?
さらに調べると、apt-get
で入れるphantomjsだと問題があるみたい。
この方もnpm
で入れていますね。
というわけでまずUbuntuにnpmをインストールしました。
しかしapt-get
だと入るバージョンが古かったり、node
でなくて nodejs
コマンドだったりします。
よって n package
を使用します。
Specs
rails about
で確認(バージョン古め・・・)
n packageの導入 〜 node のインストールまで
まずは普通にapt-get
でnodejs
& npm
のインストール
$ sudo apt-get install -y nodejs npm
次に n packageの導入
$ sudo n stable $ echo $PATH # /usr/local/bin が含まれているかどうか確認 詳しくは後述 $ exec $SHELL # shellの再読み込み
参考にしたのはこちらの記事ですが
http://qiita.com/seibe/items/36cef7df85fe2cefa3ea
sudo n stable
の後にsymlink を張っていますが、コメントにて
/usr/local/binが$PATHに含まれている環境においてはこのsymlinkは不要で、exec $SHELLでシェルを読み込み直すだけで使うことができました。
とありましたので、それを採用することにしました。
node, npm のバージョン確認
$ node -v v7.6.0 $ npm -v 4.1.2
古いほうのバージョンは忘れてしまった・・・。
はじめに入れた(古いほうの)nodejs, npm の削除
$ sudo apt-get purge -y nodejs npm
phantomjs のインストール
$ sudo npm install -g phantomjs
nodejs-legacy
は入れていません。
参考記事:
これでfeature testsが走るようになったぞい。ふぅ・・・。