3 Stimmen

Übergabe von Laufzeitargumenten an Erlang bei der Ausführung von rebar eunit

In meinem Startskript starte ich Erlang mit:

erl -args_file vm.args

Wenn ich derzeit versuche, Unit-Tests mit rebar eunit Gibt es eine Möglichkeit für mich, benutzerdefinierte Laufzeitargumente wie die Option -args_file an den Erlang-Prozess zu übergeben, den rebar auslöst? Ich habe die Dokumente gründlich durchsucht, ohne Erfolg...

Ich weiß die Hilfe zu schätzen.

5voto

jshadyjlo Punkte 133

Ich habe meine eigene Frage beantwortet. Ich verwende die ERL_FLAGS-Variable, um Kommandozeilen-Args zu übergeben. Hier ist ein Ausschnitt aus meinem Makefile:

ERL_FLAGS="-args_file test/conf/vm.eunit.args" ./rebar skip_deps=true eunit

0voto

Chen Yu Punkte 3855

Die erste Methode ist mit Ihrer Einschränkung zufrieden: 1. in Ihrer eunit-Testfunktion, die erlang'sche "os:cmd("erl -name bar -detached arguments")." um einen anderen Erlang-Knoten zu starten. In die Argumente können Sie einfügen, was Sie wollen. Aber die Prüfung von eunit wird schwierig sein, weil der Test die Knoten überqueren wird.

Die zweite Methode besteht darin, die Einschränkungen zu ändern: 1. Verwendung der "configuremnt-Datei" zur Übergabe von Argumenten und nicht zur Verwendung von Befehlsparametern zur Übergabe von Parametern.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X