我正在尝试测试部分代码。我编写了以下ResetAlphaAfterDrawing = False
文件:
test.h
如果运行测试,则会调用应用程序的main方法,并且由于缺少命令行参数,因此它将终止。我想按原样运行测试套件并成功,因为#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE(my_test) {
BOOST_CHECK(true);
}
上的BOOST_CHECK
应该是通过的测试。一旦成功,我将逐一添加对代码库中的函数的调用,以进行回归测试。这可能吗?如果是,怎么办?
This post建议将以下定义添加到true
文件的顶部,但不适用于跳过主要方法调用:
test.h
答案 0 :(得分:1)
BOOST_TEST_NO_MAIN
使Boost.Test省略了它自己的主要功能,因此它将退回到应用程序的主要功能。
在单元测试中,请勿链接应用程序的main函数(不要添加包含main
的文件),而应让Boost.Test添加其自己的main,它将运行所有测试。