2017-05-10 6 views
9
~/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) 

Ich verstehe nicht, warum ich diesen Fehler bekomme. Ich kann anscheinend niemanden mit diesem spezifischen Fehler finden. Ich folge dem Tutorial https://www.railstutorial.org/book/static_pages. Dieser Fehler folgt dem Befehl rails test. Laufen Ubuntu und Schienen 5.1, wenn das hilft. Ich gebe keine Argumente weiter, deshalb verstehe ich nicht, warum ich diesen Fehler bekomme.minitest_plugin.rb: 9 Falsche Anzahl von Argumenten

Meine Testdatei wie folgt aussieht:

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 

Antwort

19

Dies ist eigentlich ein Fehler in Schienen, enthüllt von Minitest Update auf 5.10.2 wie gesagt here und es wurde bereits behoben here.

Da die Pull-Anfrage nur 10 Stunden alt ist (zum Zeitpunkt des Schreibens), wurde sie noch nicht veröffentlicht, obwohl sie bereits zusammengeführt wurde.

In der Zwischenzeit können Sie in Ihrem Gemfile angeben:

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

bearbeiten

Vergessen Sie nicht, bundle update minitest

2

Es stellt sich heraus, dass in meinem Test/test_helper.rb ich eine Zeile Code benötigt, die fehlte. Ich habe dies vor "Klasse ActiveSupport :: TestCase" hinzugefügt.

Minitest::Reporters.use! 

Dies gab mir ein passendes Ergebnis für meinen Test mit keinen seltsamen Argument Fehler. Hoffe das hilft jemandem für die Zukunft!

0

ich diesen Fehler auch aufgetreten. Ich habe versucht, die am besten gewählte Lösung zu verwenden, aber Rails sagte mir, dass das Bundle Minitest auf 5.10.2 gesperrt hat. Stattdessen habe ich einfach eine gem update minitest gemacht und meine Tests liefen ohne den seltsamen Fehler.

+0

Wenn Sie nur den Minitest gem geändert in die Gemfile, versuche es mit 'bundle update --source minitest' zu aktualisieren: – tschoppi

+0

OP: Lies einfach die Nachricht bundler gibt dir, er sagt dir, dass du' bundle update' verwenden sollst, um die gesperrte Version zu ändern ... – Geoffroy

4

Hey ich tue genau dieses Tutorial und folgte die Top-Lösung und es ist mein Problem behoben, und zwar (für uns insgesamt noobs) Ich tat dies, um mein 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 
Verwandte Themen