Как запустить лагер перед запуском теста eunit с арматурой
Я хочу начать lager
перед любым eunit
test выполняется так, чтобы я мог видеть журнал, когда тесты фактически выполняются (я использую журнал для целей отладки).
Однако у меня есть сотни тестов (распределенных по нескольким приложениям и модулям), и я не хочу проходить каждый тест и ставить lager:start()
в начале, так что мне было интересно, есть ли способ сказать rebar
(или же eunit
) выполнить lager:start()
перед выполнением eunit
тесты?
2 ответа
Я думаю, что вы можете использовать параметры erl, такие как "-s lager", и передать их методом, описанным в следующем посте.
передача аргументов времени выполнения в erlang при запуске rebar eunit
(Я знаю, что это не полный ответ, но я согласен со Светлиным, что должен быть более элегантный подход... Я предложу это как дополнительное улучшение ответа Петра)
Если вы используете Makefile с rebar, вы можете изменить цель make для установки этой переменной среды, это будет что-то вроде:
$ make test
или же
$ make localtest
И эта цель будет выглядеть так:
test:
ERL_AFLAGS="-s lager"
$(REBAR) skip_deps=true eunit