LoginSignup
16
5

More than 5 years have passed since last update.

minitestの5.10.2でtestが動作しないときに試すこと

Last updated at Posted at 2017-05-16

(2017/05/17追記あり)
Ruby on Rails Tutorialのテストが動作しなかったので備忘録代わりに。

上記Tutorialにおいて、Railsのバージョンは5.0.0.1で固定されている。
そして、簡単なコントローラーをgenerateしてテストを実行しようとすると下記エラーが発生する。

$ rails test
Running via Spring preloader in process 2460
Run options: --seed 30883

# Running:

..

Finished in 0.811104s, 2.4658 runs/s, 2.4658 assertions/s.
/usr/local/rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/test_unit/minitest_plugin.rb:9:in `aggregated_results': wrong number of arguments (given 1, expected 0) (ArgumentError)
        from /usr/local/rvm/gems/ruby-2.3.0/gems/minitest-5.10.2/lib/minitest.rb:597:in `report'
        from /usr/local/rvm/gems/ruby-2.3.0/gems/minitest-reporters-1.1.9/lib/minitest/minitest_reporter_plugin.rb:26:in `each'
        from /usr/local/rvm/gems/ruby-2.3.0/gems/minitest-reporters-1.1.9/lib/minitest/minitest_reporter_plugin.rb:26:in `report'
        from /usr/local/rvm/gems/ruby-2.3.0/gems/minitest-5.10.2/lib/minitest.rb:687:in `each'
・
・
・

どうもgemのminitestが5.10.2(2017/5/9リリース)にアップデートされたことで発生した様子。
参考:StackOverflow

Rails側でminitestに合わせた対応が進んでいる。
暫定対応としては、gemfileに以下の記述を追加し、5.10.1のminitestをインストールすることで解決ができる。

gem 'minitest', '~> 5.10', '!= 5.10.2'

(2017/5/17追記)
2017/5/12にリリースされたRails5.0.3とRails5.1.1で対応されたそうです。

16
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
5