如何在使用钢筋运行eunit测试之前启动lager

时间:2013-01-14 08:37:58

标签: erlang rebar eunit

我想在执行任何lager测试之前启动eunit,这样我就可以在实际运行测试时看到日志(我使用日志进行调试)。

但是我有数百个测试(分布在多个应用程序和模块中)并且我不想通过每一个并在开头放lager:start()所以我想知道是否有办法告诉rebar(或eunit)在执行lager:start()测试之前执行eunit

2 个答案:

答案 0 :(得分:2)

我认为你可以使用类似“-s lager”的erl params,并通过方法传递它,如下文所述。

passing runtime arguments to erlang when running rebar eunit

答案 1 :(得分:0)

(我知道这不是一个完整的答案,但我同意斯韦特林应该有一个更优雅的方法......我将提供这个作为对Petr的回答的渐进改进)

如果你使用带有钢筋的Makefile,你可以修改make target来设置这个环境变量,它类似于:

$ make test

$ make localtest

该目标看起来像:

test:
        ERL_AFLAGS="-s lager" 
        $(REBAR) skip_deps=true eunit