Skip to content
YAMASHINA Hio edited this page Jul 25, 2013 · 4 revisions

(origin: erlang/otp/wiki/Running-tests/417aa95, translated at 2013-07-24 21:00 +0900 JST)

テストの実行 (Running tests)

ビルド (Building)

初めに ERL_TOP 及び PATH を設定します

# Bourne Shell
export ERL_TOP=$PWD
export PATH=$ERL_TOP/bin:$PATH
# C Shell
setenv ERL_TOP $PWD
setenv PATH $ERL_TOP/bin:$PATH

それから次のようにしてテストをビルドします

./otp_build all -a && ./otp_build tests

もし ERL_LIBS の要素に問題がある旨のエラーが生じたら, ERL_LIBS を unset してから失敗した ./otp_build 呼び出しを再度実行します:

# Bourne Shell
unset ERL_LIBS
# C Shell
unsetenv ERL_LIBS

実行 (Running)

テストを実行するために初めに次の事を実行します:

cd release/tests/test_server

それから Erlang を起動します:

$ERL_TOP/bin/erl

ts フレームワークをインストールします

ts:install().

全てのテストスイートを実行するには

ts:run().

全てのテストを実行するには数時間を必要とします, なので1つのアプリケーションについてのテストケースを実行したいでしょう

ts:run(Application, [batch]).

もしくはアプリケーションの一部分だけでしょうか, 例えば

ts:run(emulator, bs, [batch]).

これは bs で始まる全てのテストスイートモジュールを実行します (つまりビット構文をテストする全てのモジュール).

モジュール内の特定のテストを実行するにはモジュールとテストケースのフルネームを書き出す必要があります:

ts:run(emulator, bs_bincomp_SUITE, byte_aligned, [batch]).

ts:help() を実行するといくらかのヘルプを見ることができます.

現在 kernel アプリケーションで15個前後失敗するテストケースがあります.

R14B02 以降においてはリリースされたアプリケーションの test ディレクトリから Common Test を直接呼び出すことで erl_interface テストを除いて全てのテストを実行することもできます.

cd release/tests/test_server
$ERL_TOP/bin/ct_run -suite ../compiler_test/andor_SUITE -case t_orelse

コマンドラインからの実行には前述の `ts:install()` ステップが依然として必要です. ct_run に関する詳しい情報は http://www.erlang.org/doc/man/ct_run.html を参照してください.

結果の分析 (Examining the results)

ウェブブラウザで release/test/test_server/index.html を開きます. 若しくは結果の分析のためにテストスイートを実行中の時には今実行しているテストスイートの今までの分として release/test/test_server/last_test.html を開きます (R14B02 以降であれば release/tests/test_server/all_runs.html を開くと現在実行中のテストを見ることができます).