A Little Each Day

note to self

Rails Tutorial(第4版)でテストをするとエラーがでる

こんにちは。本日はRails Tutorialで発生したエラーについてです。

チュートリアルの第4版(Rails5.0.0.1)でテストをすると動作しないエラーがありました。

バージョン

Ruby on Rails 5.0.0.1
Rails tutorial 第4版


エラー内容

Rails Tutorialの最新版(第4版・Rails5.0)を勉強していた。

railstutorial.jp


チュートリアル第3章の「ほぼ静的なページの作成」で、最初のテストを走らせたときにエラーが発生してテストが動作しなかった。

$ rails test
Running via Spring preloader in process 70772
Run options: --seed 8700

# Running:

..

Finished in 0.456062s, 4.3854 runs/s, 4.3854 assertions/s.
・
・
・


チュートリアルでは成功する体になっているが、実際に同じことをすると失敗してしまう。


これはどうやら、minitestのバージョンが5.10.2にアップデートされた影響でエラーが発生している模様です。

github.com


GitHubでもこのバグについて上がっています。


解決方法

このエラーを解決するためには、minitestのバージョンを変える必要があります。

group :test do
  gem 'minitest', '~> 5.10', '!= 5.10.2'
end


次に

$ bundle update minitest


アップデートできたのでもう一度テストをしてみる。

$ rails test
Running via Spring preloader in process 70967
Run options: --seed 49980

# Running:

..

Finished in 0.474814s, 4.2122 runs/s, 4.2122 assertions/s.

2 runs, 2 assertions, 0 failures, 0 errors, 0 skips


今度はきちんとエラーなくテストができました。



本日は以上です。