Ich schreibe einen Test mit EUnit, aber keine Ausnahme Detailausgabe in der Konsole.
%Vor%Führen Sie dieses Modul aus: exp_test () in der Erlang Shell-Ausgabe nach
%Vor%Aber in EUnit Ausgabe nach
%Vor%EUnit gibt nichts Exception Trace Info
ausIch versuche die ausführliche Konfiguration in eunit, aber keinen Effekt.
Ich möchte einige Ausnahmedetails in eunit-Testergebnissen ausgeben.
Danke ~
Eunit ist ziemlich alt, und obwohl es offiziell von dem OTP-Team bei Ericsson gepflegt wird, ist es normalerweise unbeachtet. Eunit hat derzeit die schlechte Angewohnheit, Stack-Spuren aufzufressen, und wurde in den Ausnahmen für R15s Zeilennummern nicht aktualisiert.
Ich würde nicht argumentieren, dass "so soll es funktionieren". Kein gesundes Testwerkzeug sollte Ausnahmedetails und Zeilennummern für Sie ausblenden.
Das Problem scheint zu sein, dass die mit R15 ausgelieferte Version von eunit das neue Stack-Trace-Format in R15 nicht versteht. Dies wurde in der Entwicklungsversion von eunit behoben: github.com/richcarl/eunit
Zum Beispiel:
%Vor%Ich hoffe, das wird es in die nächste Version von OTP R15 schaffen.
Dies ist ein bekanntes Problem in eunit, wie in R15B und R15B01 veröffentlicht. Dies wurde in Release R15B02 behoben. Wenn Sie eine frühere Version verwenden, können Sie einen Patch herunterladen und anwenden:
Sie können das Problem in Ihrer lokalen Installation beheben, indem Sie das betroffene Modul erneut kompilieren:
Laden Sie die Erlang / OTP-Quellen herunter und entpacken Sie sie, falls Sie sie noch nicht haben.
%Vor%Laden Sie den Patch herunter .
%Vor% Kompilieren Sie eunit_lib.erl
erneut.
Kopiere die neue eunit_lib.beam
über die alte (normalerweise irgendwo unter /usr/local
).