Boost.Test 测试框架使用指南
1. 自定义 main
函数与初始化函数
在使用 Boost.Test 时,若不想让库自动生成 main
函数,可按以下步骤操作:
- 在包含任何库头文件之前,定义 BOOST_TEST_NO_MAIN
和 BOOST_TEST_ALTERNATIVE_INIT_API
宏。
- 在自定义的 main
函数中,调用默认测试运行器 unit_test_main()
,并将默认初始化函数 init_unit_test()
作为参数传入。
示例代码如下:
#define BOOST_TEST_MODULE My first test module
#define BOOST_TEST_NO_MAIN
#define BOOST_TEST_ALTERNATIVE_INIT_API
#include <boost/test/included/unit_test.hpp>
BOOST_AUTO_TEST_CASE(first_test_function)
{
BOOST_TEST(true);
}
int main(int argc, char* argv[])
{
return boost::unit_test::unit_test_main(init_unit_test, argc, argv);
}