Передача аргументов времени выполнения в erlang при запуске rebar eunit

В моем скрипте запуска я начинаю erlang с:

erl -args_file vm.args

В настоящее время при попытке запустить модульные тесты с rebar eunit Есть ли способ для меня передать пользовательские аргументы времени выполнения, такие как опция -args_file, процессу erlang, который запускает арматуру? Я искал документы высоко и низко, но безрезультатно...

Я ценю помощь.

2 ответа

Решение

Я ответил на свой вопрос. Я использую переменную ERL_FLAGS для передачи аргументов командной строки. Вот фрагмент из моего Makefile:

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

Первый способ удовлетворяет вашему ограничению: 1. в вашей тестовой функции eunit использовать erlang "os:cmd("erl -name bar -detached arguments")." чтобы начать другой узел erlang. В аргументы вы можете вставить все, что захотите. Но проверка eunit будет трудной, потому что тест пересечет узлы.

Второй способ - изменить ограничение: 1. Использовать "файл configuremnt" для передачи аргументов, а не использовать параметр команды для передачи параметров.

Другие вопросы по тегам