我有两组测试(功能测试和单元测试),我希望能够指定哪一组通过 cmake 运行。
一组测试是我想通过“make test”运行的单元测试。
另一组测试是我想通过“制作功能测试”来运行的功能测试。
目前两者都是 ctest 的一部分,因为我通过 add_test 运行这两个套件。我的 CMakeLists.txt 文件是这样的:
FOREACH(functional_test ${functional_tests})
ADD_TEST(NAME functional_test COMMAND f_test.sh functional_test)
ENDFOREACH(functional_test)
FOREACH(unit_test ${unit_tests})
ADD_TEST(NAME unit_test COMMAND u_test.sh unit_test)
ENDFOREACH(unit_test)
我想为这两个套件使用 ctest,因为它为我提供了一个很好的、可读的测试套件格式(哪些测试通过了,哪些测试失败了)。
我宁愿不必创建自定义可执行文件,为其创建一个名为 functionaltests 的目标,并尝试模仿 ctest 如何打印出测试结果。