【发布时间】:2020-10-25 02:37:11
【问题描述】:
我在cmake 中见过add_test 几次,但我很困惑,因为我使用的是googletest,而且我不需要一次调用add_test。有人可以解释为什么吗?这是由googletest 直接处理的,还是在您使用googletest 时不使用这个调用?
【问题讨论】:
标签: c++ unit-testing cmake googletest
我在cmake 中见过add_test 几次,但我很困惑,因为我使用的是googletest,而且我不需要一次调用add_test。有人可以解释为什么吗?这是由googletest 直接处理的,还是在您使用googletest 时不使用这个调用?
【问题讨论】:
标签: c++ unit-testing cmake googletest
该命令将目标(或自定义命令)添加到CTest。因此,当您在构建目录中执行ctest 时,所有添加的测试都会执行。如果您不想使用 CTest 而只是手动执行测试二进制文件,则无需使用add_test。
在较大的项目中,测试通常由多个二进制文件组成,使用单个命令执行所有测试会更方便(尤其是当您的构建管道是自动化的时)。
【讨论】:
自 CMake 3.10 以来,gtest_discover_tests()...
参考:https://cmake.org/cmake/help/latest/module/GoogleTest.html
【讨论】: