3

eunit テスト ランナーとして rebar を使用して、単純な erlang アプリケーションを作成しようとしています。プログラムで実行せずに、迷惑なログメッセージをファイルにリダイレクトする方法はありますか? 鉄筋なしerl -kernel error_logger "{file,\"test.log\"}"でこれを行うと言うことができますが、鉄筋でどのように行うことができますか?

質問を一般化すると、テストを実行するときに、rebar を使用していくつかのアプリケーション環境設定を渡す方法はありますか?

4

1 に答える 1

2

私自身の質問に答えます。ここで説明したように、ERL_AFLAGS 環境変数を使用して、erlang フラグを rebar に渡す方法があります。したがって、必要なすべての環境設定を含む構成ファイルを作成して、ERL_AFLAGS="-config /path/to/config" rebar eunit.

私の問題の解決策は次のとおりです。

echo '[{kernel, [{error_logger, {file, "test.log"}}]}].' > eunit.config
ERL_AFLAGS="-config eunit" rebar eunit

不器用なアプローチだと思いますが、うまくいきます。

于 2013-11-23T20:13:07.823 に答える