Skip to content
tuncer edited this page May 31, 2012 · 19 revisions

Building

First make sure ERL_TOP and PATH are configured

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

Then build the tests like this

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

If you encounter an error due to problematic entries in ERL_LIBS, unset ERL_LIBS and re-run the failed ./otp_build call:

# Bourne Shell
unset ERL_LIBS
# C Shell
unsetenv ERL_LIBS

Running

To run the test first do:

cd release/tests/test_server

and then start Erlang:

$ERL_TOP/bin/erl

Install the ts framework

ts:install().

To run all test suites do

ts:run().

Note that running all tests will require several hours, so you may want to run the test cases for a single application

ts:run(Application, [batch]).

or even part of the test suite for an application, for example

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

to run all test suite modules starting with bs (i.e. all modules that test the bit syntax).

To run a specific test case in a module, the full name of the module and test case must be spelled out:

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

Run ts:help() to show some help.

There will currently be 15 or so failed test cases in the kernel application.

As of R14B02 it is also possibly to start all tests but the erl_interface tests by invoking Common Test directly from the released applications test directory, i.e.

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

Running from the command line still requires you to do the `ts:install()` step above. For more information about ct_run see http://www.erlang.org/doc/man/ct_run.html

Examining the results

Open the file release/tests/test_server/index.html in a web browser. Or open release/tests/test_server/last_test.html when a test suite is running to examine the results so far for the currently executing test suite (in and later R14B02 you want to open the release/tests/test_server/all_runs.html file to get to the currently running test)