将预处理程序指令用于测试单元的相关性

时间:2012-11-23 17:56:07

标签: c++ debugging preprocessor-directive

我正在使用Boost单元测试BOOST_AUTO_TEST_CASE 它需要删除main()函数来执行测试用例。 问题是 应该使用哪些指令在Normal / UnitTest模式之间切换?我有Windows和Unix的跨平台应用程序。

我只有一个建议:在#ifndef TESTING中使用main.cpp之类的内容并使用手动更改#define TESTING行?

有没有更好的解决方案?

由于

1 个答案:

答案 0 :(得分:2)

单元测试应该进入单独的翻译单元。如果您的图书馆有foo.hppfoo.cpp,则您可以使用foo_test.cpp进行单元测试。然后,您的构建环境将意识到构建并运行这些测试的新“测试”目标。