...one of the most highly
regarded and expertly designed C++ library projects in the
world. — Herb Sutter and Andrei
The test tree is the hierarchy of test cases and test suites, along with all the fixtures (global, case or suite level), and the respective dependencies within all those elements.
A test tree is composed with:
The following hierarchy represents a test tree (further detailed in the test-suite section) without any fixture:
Decoration can be added to test suites and cases except for the master test suite. Those decoration may modify the way the Unit Test Framework handles the tree. For instance, there is no defined order in the execution of test cases enforced by the tree itself, except for the fixtures and the elements they relate to (suite, case); decoration may be used to instruct a specific order among the elements of the tree.
The test-tree by itself does not give any particular order in the execution of the test-cases. The only implicit order is given by the fixtures. To indicate a particular order, specific decorators should be used.