test/doc/adv_scenarios/test_module_runner_overview.qbk
Raffi Enficiaud ae01c8387c Documentation updates
- section about command line argument filtering for template test cases
- many typos fixes
- remove reference to bjam
2019-10-31 08:54:50 +01:00

51 lines
2.0 KiB
Plaintext

[/
/ Copyright (c) 2003 Boost.Test contributors
/
/ Distributed under the Boost Software License, Version 1.0. (See accompanying
/ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
/]
[section:test_module_runner_overview Test module runner]
A ['test module runner] is an ['orchestrator] or a ['driver] that, given the test tree, ensures the test tree is initialized,
tests are executed and necessary reports generated. It performs the following operations:
* initialize the test module using the supplied [link boost_test.adv_scenarios.test_module_init_overview ['initialization function]];
* select output media for the test log and the test results report;
* execute test cases as specified by run-time parameters;
* produce the test results report;
* generate the appropriate return code.
The __UTF__ comes with the default test runner. There is no need to call it explicitly. The default generated test module's
[link boost_test.adv_scenarios.entry_point_overview entry point] invokes the default test runner. The default test runner is
declared with the following signature:
```
namespace boost { namespace unit_test {
typedef bool (*init_unit_test_func)();
int unit_test_main( init_unit_test_func init_func, int argc, char* argv[] );
} }
```
The test runner may return one of the following values:
[table
[[Value][Meaning]]
[[`boost::exit_success`][
* No errors occurred during testing, or
* the success result was forced with command-line argument `--[link boost_test.utf_reference.rt_param_reference.result_code `result_code`]=no`.]]
[[`boost::exit_test_failure`][
* Non-fatal errors detected and no uncaught exceptions were thrown during testing, or
* the initialization of the __UTF__ failed. ]]
[[`boost::exit_exception_failure`][
* Fatal errors were detected, or
* uncaught exceptions thrown during testing. ]]
]
An advanced test runner may provide additional features, including interactive GUI interfaces, test coverage and profiling support.
[endsect] [/section:test_module_runner_overview]