单元测试可执行项目

Cha*_*les 14 c++ boost unit-testing

也许我没有正确地思考这个问题.我正在使用单元测试开始我的第二个项目.我的第一个项目是我自己编写的,对于这个项目,我正在尝试Boost :: test.

我的问题是,编译成可执行文件的单元测试项目的正确程序是什么?似乎我看到的所有东西都是库和依赖项.我希望我的exe项目能够进行单元测试,但是我不希望在二进制文件中出现一堆单元测试函数,我也不想做

#ifdef _DEBUG
    BOOST_AUTO_TEST_CASE( my_func )
    {
    }
#endif
Run Code Online (Sandbox Code Playgroud)

围绕我的所有测试.

我考虑过为单元测试创​​建一个单独的项目,但这并不适用于可执行文件..除非我想做一些花哨的预构建操作从我的其他项目复制到测试项目中.

有什么想法或想法吗?

phi*_*ant 8

该项目可以编译为一个库,这个库可能静态地链接在两个独立的可执行文件中:将要交付的"项目"和单元测试.

现在问题似乎来自你的IDE,它是哪一个?是否允许为一个项目创建两个二进制文件?


Hol*_*mar 6

我使用cppunit在一个额外的项目中测试我的可执行文件,该项目只链接到从可执行代码生成的*.obj文件.这样,您在原始代码库中没有任何测试逻辑,并且可以为测试编写单独的控制台或Windows应用程序.

干杯霍尔格