这是我的项目层次结构
ProjectMain
|
Project 1
| |
| tests
|
Project 2
|
tests
ProjectMain的CMakeLists下载并按照https://github.com/google/googletest/blob/master/googletest/README.md设置Google测试
项目1和项目2的CMakeLists具有include(CTest)以及enable_testing()。构建完所有内容后,测试的可执行文件将位于构建路径中的类似层次结构中。问题是,当我使用VSCode的cmake工具运行测试时,它认为测试项目是ProjectMain,显然找不到任何测试。如果我从Project 1构建目录运行cmake,它将正常工作。如果我将其手动移动到ProjectMain的生成目录,则cmake工具测试可以正常工作。另外,我尝试在add_test中使用WORKING_DIRECTORY参数,但运气不好,文件一直停留在原处。
我需要在ProjectMain的CMakeLists.txt中启用enable_testing()