我打算在我的C++项目中使用CDash,配合CMake/CTest使用。
为了启用CDash并自定义设置,比如"MEMORYCHECK_SUPPRESSIONS_FILE"和"DART_TESTING_TIMEOUT",我在根目录的CMakeLists.txt中添加了以下代码:
set(MEMORYCHECK_SUPPRESSIONS_FILE "${CMAKE_SOURCE_DIR}/valgrind.supp")
set(DART_TESTING_TIMEOUT "120")
include(CTest)
然而,生成的"DartConfiguration.tcl"根本没有包含我的设置(MemoryCheckSuppressionFile是空的,TimeOut仍然是默认值)。
我发现,如果我像这样传递参数 -DDART_TESTING_TIMEOUT=STRING:120,那就可以工作,但是如果在CMakeLists.txt中指定它们,则会失败。
提前感谢您的帮助 :)
DartConfiguration.tcl
# 动态分析和覆盖率
PurifyCommand:
ValgrindCommand:
ValgrindCommandOptions:
MemoryCheckCommand: /usr/bin/valgrind
MemoryCheckCommandOptions:
MemoryCheckSuppressionFile:
CoverageCommand: /usr/bin/gcov
# 测试选项
# TimeOut 是等待测试进程完成的时间(以秒为单位)。超过 TimeOut 秒后,该进程将被终止。
# 当前设置为 25 分钟
TimeOut: 1500