Erlang -- ct_master

User's Guide
Reference Manual
Release Notes
PDF
Top

Common Test
Reference Manual
Version 1.12.2

Expand All
Contract All

Table of Contents

- common_test
  - Top of manual page
  - Module:Testcase/0
  - Module:Testcase/1
  - Module:all/0
  - Module:end_per_group/2
  - Module:end_per_suite/1
  - Module:end_per_testcase/2
  - Module:group/1
  - Module:groups/0
  - Module:init_per_group/2
  - Module:init_per_suite/1
  - Module:init_per_testcase/2
  - Module:suite/0
- ct_run
- ct
  - Top of manual page
  - abort_current_testcase/1
  - add_config/2
  - break/1
  - break/2
  - capture_get/0
  - capture_get/1
  - capture_start/0
  - capture_stop/0
  - comment/1
  - comment/2
  - continue/0
  - continue/1
  - decrypt_config_file/2
  - decrypt_config_file/3
  - encrypt_config_file/2
  - encrypt_config_file/3
  - fail/2
  - fail/1
  - get_config/1
  - get_config/2
  - get_config/3
  - get_event_mgr_ref/0
  - get_status/0
  - get_target_name/1
  - get_testspec_terms/0
  - get_testspec_terms/1
  - get_timetrap_info/0
  - install/1
  - listenv/1
  - log/5
  - log/1
  - log/2
  - log/3
  - log/4
  - make_priv_dir/0
  - notify/2
  - pal/4
  - pal/1
  - pal/2
  - pal/3
  - parse_table/1
  - print/4
  - print/1
  - print/2
  - print/3
  - reload_config/1
  - remove_config/2
  - require/2
  - require/1
  - run/2
  - run/3
  - run/1
  - run_test/1
  - run_testspec/1
  - sleep/1
  - start_interactive/0
  - step/3
  - step/4
  - stop_interactive/0
  - sync_notify/2
  - testcases/2
  - timetrap/1
  - userdata/2
  - userdata/3
- ct_master
  - Top of manual page
  - abort/0
  - abort/1
  - basic_html/1
  - get_event_mgr_ref/0
  - progress/0
  - run/1
  - run/4
  - run/3
  - run_on_node/3
  - run_on_node/2
  - run_test/2
- ct_cover
  - Top of manual page
  - add_nodes/1
  - cross_cover_analyse/2
  - remove_nodes/1
- ct_ftp
  - Top of manual page
  - cd/2
  - close/1
  - delete/2
  - get/3
  - ls/2
  - open/1
  - put/3
  - recv/2
  - recv/3
  - send/2
  - send/3
  - type/2
- ct_ssh
  - Top of manual page
  - apread/4
  - apread/5
  - apwrite/4
  - apwrite/5
  - aread/3
  - aread/4
  - awrite/3
  - awrite/4
  - close/2
  - close/3
  - connect/1
  - connect/2
  - connect/3
  - del_dir/2
  - del_dir/3
  - delete/2
  - delete/3
  - disconnect/1
  - exec/4
  - exec/2
  - exec/3
  - get_file_info/2
  - get_file_info/3
  - list_dir/2
  - list_dir/3
  - make_dir/2
  - make_dir/3
  - make_symlink/3
  - make_symlink/4
  - open/3
  - open/4
  - opendir/2
  - opendir/3
  - position/3
  - position/4
  - pread/4
  - pread/5
  - pwrite/4
  - pwrite/5
  - read/3
  - read/4
  - read_file/2
  - read_file/3
  - read_file_info/2
  - read_file_info/3
  - read_link/2
  - read_link/3
  - read_link_info/2
  - read_link_info/3
  - receive_response/2
  - receive_response/3
  - receive_response/4
  - rename/3
  - rename/4
  - send/3
  - send/4
  - send/5
  - send_and_receive/3
  - send_and_receive/4
  - send_and_receive/5
  - send_and_receive/6
  - session_close/2
  - session_open/1
  - session_open/2
  - sftp_connect/1
  - subsystem/3
  - subsystem/4
  - write/3
  - write/4
  - write_file/3
  - write_file/4
  - write_file_info/3
  - write_file_info/4
- ct_netconfc
  - Top of manual page
  - action/2
  - action/3
  - close_session/1
  - close_session/2
  - copy_config/3
  - copy_config/4
  - create_subscription/1
  - create_subscription/4
  - create_subscription/6
  - create_subscription/5
  - create_subscription/3
  - create_subscription/2
  - delete_config/2
  - delete_config/3
  - edit_config/3
  - edit_config/5
  - edit_config/4
  - get/2
  - get/3
  - get_capabilities/1
  - get_capabilities/2
  - get_config/3
  - get_config/4
  - get_event_streams/3
  - get_event_streams/2
  - get_session_id/1
  - get_session_id/2
  - hello/1
  - hello/3
  - hello/2
  - kill_session/2
  - kill_session/3
  - lock/2
  - lock/3
  - only_open/2
  - only_open/1
  - open/2
  - open/1
  - send/2
  - send/3
  - send_rpc/2
  - send_rpc/3
  - unlock/2
  - unlock/3
- ct_rpc
  - Top of manual page
  - app_node/2
  - app_node/3
  - app_node/4
  - call/4
  - call/5
  - call/6
  - cast/4
  - cast/5
- ct_snmp
  - Top of manual page
  - get_next_values/3
  - get_values/3
  - load_mibs/1
  - register_agents/2
  - register_users/2
  - register_usm_users/2
  - set_info/1
  - set_values/4
  - start/2
  - start/3
  - stop/1
  - unload_mibs/1
  - unregister_agents/1
  - unregister_agents/2
  - unregister_users/1
  - unregister_users/2
  - unregister_usm_users/1
  - unregister_usm_users/2
- ct_telnet
  - Top of manual page
  - close/1
  - cmd/2
  - cmd/3
  - cmdf/3
  - cmdf/4
  - expect/2
  - expect/3
  - get_data/1
  - open/3
  - open/4
  - open/1
  - open/2
  - send/2
  - send/3
  - sendf/3
  - sendf/4
- unix_telnet
  - Top of manual page
  - connect/7
  - get_prompt_regexp/0
- ct_slave
  - Top of manual page
  - start/3
  - start/2
  - start/1
  - stop/2
  - stop/1
- ct_hooks
  - Top of manual page
  - Module:id/1
  - Module:init/2
  - Module:on_tc_fail/3
  - Module:on_tc_skip/3
  - Module:post_end_per_group/4
  - Module:post_end_per_suite/4
  - Module:post_end_per_testcase/4
  - Module:post_init_per_group/4
  - Module:post_init_per_suite/4
  - Module:post_init_per_testcase/4
  - Module:pre_end_per_group/3
  - Module:pre_end_per_suite/3
  - Module:pre_end_per_testcase/3
  - Module:pre_init_per_group/3
  - Module:pre_init_per_suite/3
  - Module:pre_init_per_testcase/3
  - Module:terminate/1
- ct_property_test
  - Top of manual page
  - init_per_suite/1
  - quickcheck/2

# ct_master

### MODULE

ct_master

### MODULE SUMMARY

Distributed test execution control for Common Test.

### DESCRIPTION

Distributed test execution control for Common Test.

This module exports functions for running Common Test nodes on multiple hosts in parallel.

### EXPORTS

abort() -> ok

Stops all running tests.

abort(Nodes) -> ok

Types:

Nodes = atom() | [atom()]

Stops tests on specified nodes.

basic_html(Bool) -> ok

Types:

Bool = true | false

If set to true, the ct_master logs are written on a primitive HTML format, not using the Common Test CSS style sheet.

get_event_mgr_ref() -> MasterEvMgrRef

Types:

MasterEvMgrRef = atom()

Gets a reference to the Common Test master event manager. The reference can be used to, for example, add a user-specific event handler while tests are running.

Example:

     gen_event:add_handler(ct_master:get_event_mgr_ref(), my_ev_h, [])

progress() -> [{Node, Status}]

Types:

Node = atom()
Status = finished_ok | ongoing | aborted | {error, Reason}
Reason = term()

Returns test progress. If Status is ongoing, tests are running on the node and are not yet finished.

run(TestSpecs) -> ok

Types:

TestSpecs = string() | [SeparateOrMerged]

Equivalent to ct_master:run(TestSpecs, false, [], []).

run(TestSpecs, InclNodes, ExclNodes) -> ok

Types:

TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
InclNodes = [atom()]
ExclNodes = [atom()]

Equivalent to ct_master:run(TestSpecs, false, InclNodes, ExclNodes).

run(TestSpecs, AllowUserTerms, InclNodes, ExclNodes) -> ok

Types:

TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
AllowUserTerms = bool()
InclNodes = [atom()]
ExclNodes = [atom()]

Tests are spawned on the nodes as specified in TestSpecs. Each specification in TestSpec is handled separately. However, it is also possible to specify a list of specifications to be merged into one specification before the tests are executed. Any test without a particular node specification is also executed on the nodes in InclNodes. Nodes in the ExclNodes list are excluded from the test.

run_on_node(TestSpecs, Node) -> ok

Types:

TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
Node = atom()

Equivalent to ct_master:run_on_node(TestSpecs, false, Node).

run_on_node(TestSpecs, AllowUserTerms, Node) -> ok

Types:

TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
AllowUserTerms = bool()
Node = atom()

Tests are spawned on Node according to TestSpecs.

run_test(Node, Opts) -> ok

Types:

Node = atom()
Opts = [OptTuples]
OptTuples = {config, CfgFiles} | {dir, TestDirs} | {suite, Suites} | {testcase, Cases} | {spec, TestSpecs} | {allow_user_terms, Bool} | {logdir, LogDir} | {event_handler, EventHandlers} | {silent_connections, Conns} | {cover, CoverSpecFile} | {cover_stop, Bool} | {userconfig, UserCfgFiles}
CfgFiles = string() | [string()]
TestDirs = string() | [string()]
Suites = atom() | [atom()]
Cases = atom() | [atom()]
TestSpecs = string() | [string()]
LogDir = string()
EventHandlers = EH | [EH]
EH = atom() | {atom(), InitArgs} | {[atom()], InitArgs}
InitArgs = [term()]
Conns = all | [atom()]

Tests are spawned on Node using ct:run_test/1