我想在执行lager
任何eunit
测试之前开始,以便在测试实际运行时可以看到日志(我将日志用于调试目的)。
但是我有数百个测试(分布在多个应用程序和模块中),我不想检查每一个测试并放在lager:start()
开头,所以我想知道是否有办法在执行之前告诉rebar
(或eunit
)执行测试?lager:start()
eunit
我认为您可以使用像“-s lager”这样的 erl 参数,并通过以下帖子中描述的方法传递它。
(我知道这不是一个完整的答案,但我同意 Svetlin 的观点,应该有一个更优雅的方法......我将提供这个作为对 Petr 答案的增量改进)
如果你使用带有 rebar 的 Makefile,你可以修改 make 目标来设置这个环境变量,它会是这样的:
$ 进行测试
或者
$ 本地测试
这个目标看起来像:
test:
ERL_AFLAGS="-s lager"
$(REBAR) skip_deps=true eunit