testing_tools.qbk 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. [/
  2. / Copyright (c) 2003 Boost.Test contributors
  3. /
  4. / Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. /]
  7. [section:testing_tools Writing unit tests]
  8. Once a test case has been declared, the body of this test should be written. A test case is a
  9. sequence of operations in which *assertions* are inserted. Those assertions evaluate /statements/ that implement the expectation being validated,
  10. and report failures and/or information in a uniform manner, depending on the [link boost_test.utf_reference.rt_param_reference.log_level log level].
  11. The __UTF__'s supplies a toolbox of assertions to ease the creation and maintenance of test cases and
  12. provide a uniform error reporting mechanism. The toolbox supplied is in most part in a form of macro declarations.
  13. An (almost) unique interface to all of them implemented by the macro __BOOST_TEST__.
  14. [note All macros arguments are calculated once, so it's safe to pass complex expressions in their place.]
  15. All tools automatically supply an error location: a file name and a line number, which can also be overridden.
  16. [caution The testing tools are intended for unit test code rather than library or production code, where throwing exceptions, using `assert()`,
  17. `boost::concept_check` or `BOOST_STATIC_ASSERT()` may be more suitable ways to detect and report errors.]
  18. For a list of all supplied testing tools and usage examples, see the [link boost_test.testing_tools.summary summary]
  19. or the [link boost_test.utf_reference.testing_tool_ref reference].
  20. [include assertions_severity_levels.qbk]
  21. [include boost_test_universal_macro.qbk]
  22. [include boost_test_reported_information.qbk]
  23. [section:extended_comparison Extended comparisons support]
  24. [include testing_floating_points.qbk]
  25. [include boost_test_string_comparison.qbk]
  26. [include boost_test_collection_comparison.qbk]
  27. [include boost_test_bitwise_comparison.qbk]
  28. [endsect]
  29. [include testing_exception_correctness.qbk]
  30. [include timeout.qbk]
  31. [include expected_failures.qbk]
  32. [include custom_predicates.qbk]
  33. [include testing_output_streams.qbk]
  34. [include boost_test_technical_details.qbk]
  35. [include boost_test_debugging.qbk]
  36. [include testing_tools_summary.qbk]
  37. [endsect] [/ testing tools]