minitest_plugin.rb:9获取错误的参数数量

时间:2017-05-10 07:55:35

标签: ruby-on-rails ruby minitest argument-error

~/Sites/sample_app$ rails test
Running via Spring preloader in process 24338
Run options: --seed 58780

Running:

..

Finished in 0.292172s, 6.8453 runs/s, 6.8453 assertions/s.
/var/lib/gems/2.3.0/gems/railties-5.1.0/lib/rails/test_unit/minitest_plugin.rb:9:in `aggregated_results': wrong number of arguments (given 1, expected 0) (ArgumentError)

我不明白为什么会收到此错误。我似乎无法找到任何有此特定错误的人。我按照教程https://www.railstutorial.org/book/static_pages进行了操作。此错误遵循rails test命令。如果有帮助,运行Ubuntu和rails 5.1。我没有传递任何论据,所以我不明白为什么我会收到这个错误。

我的测试文件如下:

    require 'test_helper'

    class StaticPagesControllerTest < ActionDispatch::IntegrationTest

    test "should get home" do
      get static_pages_home_url
      assert_response :success
    end

    test "should get help" do
      get static_pages_help_url
      assert_response :success
    end

5 个答案:

答案 0 :(得分:19)

这实际上是rails中的一个错误,由minitest更新到5.10.2显示为here并且已经修复here

由于拉取请求只有10个小时(在撰写本文时),它尚未被释放,尽管它​​已经合并。

同时,您可以在Gemfile中指定:

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

修改

别忘了bundle update minitest

答案 1 :(得分:4)

嘿,我正在做这个精确的教程,并遵循顶级解决方案,它解决了我的问题,特别是(对于我们总的新手)我这样做我的Gemfile

group :test do
  gem 'rails-controller-testing', '0.1.1'
  gem 'minitest-reporters',       '1.1.9'
  gem 'guard',                    '2.13.0'
  gem 'guard-minitest',           '2.4.4'
  gem 'minitest', '~> 5.10', '!= 5.10.2' # add this here to fix error
end

答案 2 :(得分:2)

事实证明,在我的test / test_helper.rb中,我需要一行缺失的代码。我在“class ActiveSupport :: TestCase”之前添加了这个。

    Minitest::Reporters.use!

这给了我测试的通过结果,没有奇怪的参数错误。希望这有助于未来的人!

答案 3 :(得分:0)

我也遇到过这个错误。我尝试使用最高投票解决方案,但铁路告诉我,捆绑已锁定minitest到5.10.2。相反,我刚做了一个gem update minitest,我的测试没有出现奇怪的错误。

答案 4 :(得分:0)

问题在最小的5.10.2中。降级到5.10.1可以解决此问题。

将此行添加到Gemfile的测试组中

gem 'minitest', '5.10.1'

然后运行以下命令

bundle update minitest
rails test

问题已解决