- The Execution Monitor - a basic exception and error detection and reporting
facility for use in both production and test programs. The Execution Monitor calls a user-supplied function and reports
all caught runtime exceptions. It is used internally by other Boost Test Library components. It also could be used in
some production environment to make controlled calls of functions which might otherwise crash the program.
- The Program Execution Monitor - a simple helper facility to be used to monitor
a program execution. The Program Execution Monitor provides the function main() and uses the Execution Monitor to control
a program execution. It should be used in production environment to produce uniform error reports. To control programs
working in test environment, use the Test Execution Monitor instead.
- The Test Tools - a toolbox for various testing needs. Test Tools are used by test
programs working under control of the Test Execution Monitor or the Unit Test Framework.
- The Test Execution Monitor - causes a test program to run in a monitored
environment. The Test Execution Monitor provides the main() function to control a simple test program execution and
allows to use the Test Tools to implement test logic. It is intended to be used in test environment. To control production
code execution use the Program Execution Monitor.
- The Unit Test Framework - a framework that simplifies writing and organizing
test cases. The framework supports test cases written as simple free functions or member functions and organizes them
into a tree of test suites. The framework allows to use the Test Tools to implement a test cases and provides a facility
to manage a log report level and a result report level.
- The minimal testing facility - simple facility designed to provide the functionality
presented by the original version of Boost Test. The same as the Test Execution Monitor it causes the test program to
run in a monitored environment. In addition it defines several simple test tools that behave similarly to ones defined
in Test Tools. Minimal testing facility does not require linking with external components, so could be a component of
choice for simple and quick testing needs.