Edited at

bundle exec rspec spec/が急に動かなくなった時の対処法


現象

$ bundle exec rspec spec/controllers/hoge_controller_spec.rb

といつも通りテストを走らせようとしたところ

bundler: failed to load command: rspec (/Users/user-name/project-name/vendor/bundle/ruby/2.3.0/bin/rspec)

と言われてしまった。

テストが通ってるかは自動テスト側でもわかるけど、不便なので直す方法がないか検索してみました。


試してみたこと1

$ bin/rake db:migrate RAILS_ENV=test

をしてねとエラーメッセージに書いてあるので素直にやってみました。

結果は失敗。(特にエラーの内容は変わらず)


試してみたこと2(これで解決)

最近結構DB周りをいじる開発が多かったので、もしかしたらDBの不整合が起きてしまったのか?と疑い

一旦DBをresetしてから再度migrationするようにしてみました。

$ bundle exec rake db:migrate:reset

上記のコードでDBを一旦リセットして

$ bundle exec rake db:migrate

で無事にテストの検証ができるようになりました。

よかったよかった。