我正在使用 Boost.Test (1.60.0) 来测试我的项目。为了确定最耗时的测试,我想知道每个测试的测试持续时间(以毫秒为单位)。所有测试消耗的总时间也会很好。
Boost.Test 有这样的功能吗?如果不是,我如何自己实施这样的时间测量?
我正在使用 Boost.Test (1.60.0) 来测试我的项目。为了确定最耗时的测试,我想知道每个测试的测试持续时间(以毫秒为单位)。所有测试消耗的总时间也会很好。
Boost.Test 有这样的功能吗?如果不是,我如何自己实施这样的时间测量?
--log_level=unit_scope
(或BOOST_TEST_LOG_LEVEL
环境变量)
这不会打印任何测试消息,但足够详细以打印每个测试套件和任何套件中的每个测试用例的持续时间。
您没有说明您正在使用哪个编译器,但对 Boost 的引用意味着它可能是gcc
.
gcc
具有对运行时分析的内置支持,称为gprof
. 您会从 Google 搜索中找到大量文档,这里有一个入门教程。