我的 CMakeLists.txt
包括行
include(CTest)
enable_testing()
set(CTEST_TEST_TIMEOUT 3)
add_test(...)
ctest
有效,但忽略了我设置超时的尝试。相反,它以默认超时 1500 运行。如何更改默认超时时间?怎么样
CTEST_TEST_TIMEOUT
意思是被使用?
最佳答案
CTEST_TEST_TIMEOUT
用于 CTest 脚本,而不是 CMakeLists.txt
文件。您可以使用 TIMEOUT
控制 CMake 中各个测试的超时时间。 test 属性,但没有设置全局超时默认值的 CMake 变量。下面将超时设置为 30 秒,仅用于 sometest
测试:
add_test(sometest ...)
set_tests_properties(sometest PROPERTIES TIMEOUT 30)
但是,您可以在调用
ctest
时覆盖默认超时。使用 --timeout
选项。例如。在全局超时默认设置为 120 秒的情况下运行测试:ctest --timeout 120
在 CMake 中为单个测试指定的超时仍然优先于全局设置的默认超时,即使
--timeout
选项被使用。
关于cmake - 如何覆盖 CMakeLists.txt 中的 Ctest 默认超时 1500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45009595/