我希望在执行任何eunit测试之前启动lager,以便在测试实际运行时可以看到日志(我将日志用于调试目的)。
然而,我有成百上千的测试(分布在多个应用程序和模块中),我不想遍历每一个测试并将lager:start()放在开头,所以我想知道是否有一种方法可以在执行eunit测试之前告诉rebar (或eunit)执行lager:start()?
发布于 2013-01-14 18:42:42
我认为你可以使用像"-s lager“这样的erl参数,并通过下面的帖子中描述的方法传递它。
passing runtime arguments to erlang when running rebar eunit
发布于 2013-06-29 04:19:07
(我知道这不是一个完整的答案,但我同意Svetlin的观点,应该有一种更优雅的方法……我将提供这个作为Petr答案的增量改进)
如果将Makefile与rebar一起使用,则可以修改make目标以设置此环境变量,如下所示:
$ make test
或
$ make localtest
该目标将如下所示:
test:
ERL_AFLAGS="-s lager"
$(REBAR) skip_deps=true eunithttps://stackoverflow.com/questions/14315207
复制相似问题