Ich richte eine Rakefile für ein Projekt ein und ich habe ein paar Rake-TestTasks definiert. Ich habe einen einfachen Vernunfttest durchgeführt, der ein assert_equal(1, 2)
ausführt, nur um die Ausgabe zu überprüfen, und zusätzlich zu der üblichen Fehlerausgabe bekomme ich dieses Durcheinander:
Wie werde ich es loswerden? Ich möchte nicht über 20 Zeilen Müll raufscrollen müssen, um meine Testfehler zu sehen.
Rake sollte in dieser Situation kein Backtrace zurückgeben - der Fehler liegt beim externen Befehl, nicht bei Rake's Internals. Ich habe eine E-Mail an Jim Weirich bezüglich des folgenden Patches geschickt: Ссылка
Ich hatte das gleiche Problem wie Sie und löste es durch Aktualisierung von Rake: gem install rake
Dies wurde von allem, was ich hatte, auf 0.8.7 aktualisiert.
Ich starte 1.9.2-p180 (OS X, installiert mit Homebrew) und führte Tests an einem neu erstellten Projekt durch (gemacht mit Hoe).
Rake zeigt normalerweise kein Backtrace, wenn Sie nicht --trace
angeben. Vielleicht haben Sie Rake so konfiguriert, dass es immer in --trace
mode läuft?
Standardmäßig gibt Rake den Stack-Trace nicht aus, wenn im Code, der Rake aufruft, ein Fehler auftritt. Sie können den Stack-Trace erhalten, indem Sie mit der --trace-Flag laufen, aber normalerweise würde ich es sowieso lieber sehen. Sie können das tun, indem Sie Rake.application.options.trace = true in die Rakefile einfügen.
Falls nicht, könnten Sie versuchen, Rake.application.options.trace = false
in Ihrer Rakefile zu setzen.