Kürzlich machte ich eine einfache Ruby-Anwendung und habe Minitest verwendet, um es zu testen.Störende Warnung beim Testen
Nach dem Ratschlag des Head First Ruby Buches, automatisierte ich diese Tests mit Rake (ich schreibe, was es mir gesagt hat, in das Rakefile am Ende dieses Posts zu setzen, falls das hilft). Der Test scheint gut zu laufen (alles geht so, wie ich es erwarten würde), aber ich bekomme immer diese Benachrichtigung am Ende von allem:
rvm/gems/ruby-2.3.0/gems/guard- 2.14.0/lib/guard/notifier.rb: 28: Warnung: Instanzvariable @notifier nicht initialisiert
Manuelles Testen der Dinge, indem man Ruby angibt, welche Dateien ich haben möchte, habe dieses Problem nicht, nur wenn ich " Rake-Test "um Dinge zu testen.
Soweit ich das beurteilen kann, hängt das damit zusammen, dass ich Guard eingerichtet habe, als ich Michael Hartls Rails Tutorial am Ende von Kapitel 3 folgte. Ich befolgte die Anweisungen zum Einrichten (richtig, soweit Ich kann sagen), und das war alles in einem komplett anderen Ordner (schließlich haben meine Ruby und Rails Projekte den gleichen übergeordneten Ordner, in dem sie sitzen, aber sie sind selbst in komplett separaten ruby_projects und rails_projects Ordnern). Wenn möglich, möchte ich diese Benachrichtigung in meiner Ruby-Anwendung stoppen, die ich gerade teste. Gibt es einen guten Weg, dies zu tun?
Inhalt der Rakefile Ich verwende, wenn das hilft: erfordern „Rake/testtask“
Rake::TestTask.new(:test) do |t|
t.libs << "lib"
t.test_files=FileList['test/**/test_*.rb']
end
Meine Testdatei erfordert Minitest/Autorun, und die Datei für die Anwendung, die ich testen bin, dann hat die normalen Tests