【问题标题】:Boost test - every suite in other fileBoost 测试 - 其他文件中的每个套件
【发布时间】:2013-06-08 16:00:52
【问题描述】:

我有文件 test.cpp。它看起来像这样:

#define BOOST_TEST_MAIN
#include <boost/test/included/unit_test.hpp>


BOOST_AUTO_TEST_SUITE( test_suite1 )

BOOST_AUTO_TEST_CASE( my_test )
{
    // testing...
}

BOOST_AUTO_TEST_SUITE_END()

没关系。它有效....

但是我想要更多的 BOOST_AUTO_TEST_SUITE 并且我想要在其他文件中包含每个套件。

我想运行每个测试套件中的所有测试用例。我应该怎么办?

【问题讨论】:

    标签: c++ unit-testing testing boost


    【解决方案1】:

    我有一个与您想要的类似的设置(请参阅this Q&A)。如果您想要 CMake 解决方案,请查看那里。否则,只需将您的测试用例拆分为多个文件,然后使用选项分别编译和链接它们

     -DBOOST_TEST_MAIN -DBOOST_TEST_DYN_LINK
    

    注意:通常首选将宏作为编译器/链接器选项而不是放在源文件中。借助多个测试源和 CMake 构建解决方案,您可以调用 ctest 来运行所有测试可执行文件。

    如果您想要一个测试可执行文件,他们分别编译每个测试,并将它们链接在一起成为一个可执行文件。然后你可以运行这个可执行文件,它会运行所有的测试。但是请注意,以这种方式只运行您的部分测试要困难得多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-13
      • 1970-01-01
      相关资源
      最近更新 更多