【发布时间】:2017-09-27 16:42:16
【问题描述】:
我正在尝试创建一个 CMake 项目,我想根据构建类型在其中执行测试。 例如。如果我进行性能构建,我想运行性能测试等。
我发现 add_test 为此目的提供了CONFIGURATIONS 参数。但是,如果我在那里提供构建类型,ctest 找不到任何测试。
这是一个极简主义的CMakeLists.txt 再现行为。
project (test NONE)
include (CTest)
add_test (NAME test
CONFIGURATIONS Release
COMMAND cowsay)
在外壳中:
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
ctest
输出:
Running tests...
Test project /home/phil/cmaketest/build
No tests were found!!!
如果我跑步
ctest -C Release
我得到了所需的行为,即执行了测试,但我宁愿不必手动输入-C Release。
我在这里做错了什么还是这是缩进的行为?
【问题讨论】:
标签: cmake automated-tests ctest