我试图在我的CLion项目中使用Boost测试,但我在模拟测试方面遇到了一些问题。在Boost文档中,始终只有一个文件包含下面定义的所有测试,但由于我计划进行多次测试,因此这并不好。
我希望拥有的是每个测试套件都在一个单独的文件中,并且" main"测试文件以执行CLion测试环境中的所有测试。
我找到了一种方法来做到这一点,但它非常难看并且感觉不对,所以我正在寻找正确的方法来做到这一点。
我目前正在使用这个:
// CMakeLists.txt
...
add_executable(all_tests tests/all_tests.cpp ${SOURCES})
target_link_libraries(all_tests my_lib)
// tests/all_tests.cpp
#define BOOST_TEST_MODULE Project Tests
#include <boost/test/included/unit_test.hpp>
#include "Test1.cpp"
#include "Test2.cpp"
...
答案 0 :(得分:2)
你的意思是你想要一个翻译单元(“cpp文件”)来定义测试运行器。
在底部显示了代码的3个不同组织的链接,以获得一个带入口点的TU。