ct_master
(common_test)Distributed test execution control for Common Test.
Distributed test execution control for Common Test.
This module exports functions for running Common Test nodes on multiple hosts in parallel.
Functions
abort() -> ok
Stops all running tests.
abort(Nodes) -> ok
Nodes = atom() | [atom()]
Stops tests on specified nodes.
basic_html(Bool) -> ok
Bool = true | false
If set to true, the ct_master logs will be written on a primitive html format, not using the Common Test CSS style sheet.
progress() -> [{Node, Status}]
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 have not yet finished.
run(TestSpecs) -> ok
TestSpecs = string() | [SeparateOrMerged]
Equivalent to run(TestSpecs, false, [], []).
run(TestSpecs, InclNodes, ExclNodes) -> ok
TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
InclNodes = [atom()]
ExclNodes = [atom()]
Equivalent to run(TestSpecs, false, InclNodes, ExclNodes).
run(TestSpecs, AllowUserTerms, InclNodes, ExclNodes) -> ok
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 will be handled separately. It is however
possible to also specify a list of specifications that should be merged
into one before the tests are executed. Any test without a particular node
specification will also be executed on the nodes in InclNodes
.
Nodes in the ExclNodes
list will be excluded from the test.
run_on_node(TestSpecs, Node) -> ok
TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
Node = atom()
Equivalent to run_on_node(TestSpecs, false, Node).
run_on_node(TestSpecs, AllowUserTerms, Node) -> ok
TestSpecs = string() | [SeparateOrMerged]
SeparateOrMerged = string() | [string()]
AllowUserTerms = bool()
Node = atom()
Tests are spawned on Node
according to
TestSpecs
.
run_test(Node, Opts) -> ok
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
.