我正在尝试使用提升测试,尤其是提升单元测试。
我显然不明白main函数是怎么产生和调用的,教程里说的都是定义模块和写测试
#define BOOST_TEST_MODULE EnfTraderTest
BOOST_AUTO_TEST_CASE(CalculateExpectedPriceTest){BOOST_ERROR("Oops");}
但是,我该如何告诉我的程序运行这个测试呢?我已经有了主要功能,我想从我的主要功能中决定是否运行测试。
最佳答案
最简单的方法是将测试写入一个 .cpp
文件,并在包含 unit_test.hpp< 之前定义宏
。然后您可以编译该 BOOST_TEST_MODULE
/.cpp
文件并执行它。如果您在多个 .cpp
文件中进行测试,只需将它们链接在一起,但要注意 BOOST_TEST_MODULE
或 BOOST_TEST_MAIN
的定义完全相同其中之一。
您可以使用命令行参数run_test
只运行测试的一个子集,默认是运行所有测试。
关于c++ - 如何设置要运行的 Boost 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5103886/