Передача аргументов времени выполнения в 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" для передачи аргументов, а не использовать параметр команды для передачи параметров.