Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / test / doc / test_output / progress_display.qbk
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
8
9 [section:test_output_progress Progress display]
10 In case if the test module involves lengthy computation split among multiple test cases you may be interested in
11 progress monitor. The test runners supplied with the __UTF__ support simple text progress display, implemented based
12 on
13 ``
14   boost::progress_display
15 ``
16
17 [footnote The __UTF__ interfaces allow implementing an advanced GUI based test runner with arbitrary progress display controls].
18
19 The progress display output is enabled using the __UTF__ parameter
20 [link boost_test.utf_reference.rt_param_reference.show_progress `show_progress`].
21
22 The __UTF__ has no ability to estimate how long (in time duration) the test case execution is going to take and the manual test
23 progress update is not supported at this point. The __UTF__ tracks the progress on test case level. If you want to
24 see more frequent progress update, you need to split the test into multiple test cases.
25
26 In default configuration both test log and test progress outputs are directed into standard output stream. Any test
27 log messages are going to interfere with test progress display. To prevent this you can either set log level to
28 lower level or redirect either test log or test progress output into different stream during test module
29 initialization. Use following interface to redirect test progress output:
30
31 ``
32   boost::unit_test::progress_monitor.set_stream( std::ostream& )
33 ``
34
35 [bt_example example49..Progress report for the test module with large amount of test cases..run]
36
37 [endsect] [/section:test_output_progress]
38
39 [/ EOF]