CTest
Configure a project for testing with CTest/CDash
Include this module in the top CMakeLists.txt file of a project to enable testing with CTest and dashboard submissions to CDash:
project(MyProject) ... include(CTest)
The module automatically creates a BUILD_TESTING
option that selects whether to enable testing support (ON
by default). After including the module, use code like:
if(BUILD_TESTING) # ... CMake code to create tests ... endif()
to creating tests when testing is enabled.
To enable submissions to a CDash server, create a CTestConfig.cmake
file at the top of the project with content such as:
set(CTEST_PROJECT_NAME "MyProject") set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC") set(CTEST_DROP_METHOD "http") set(CTEST_DROP_SITE "my.cdash.org") set(CTEST_DROP_LOCATION "/submit.php?project=MyProject") set(CTEST_DROP_SITE_CDASH TRUE)
(the CDash server can provide the file to a project administrator who configures MyProject
). Settings in the config file are shared by both this CTest
module and the ctest(1)
command-line Dashboard Client mode (ctest -S
).
While building a project for submission to CDash, CTest scans the build output for errors and warnings and reports them with surrounding context from the build log. This generic approach works for all build tools, but does not give details about the command invocation that produced a given problem. One may get more detailed reports by setting the CTEST_USE_LAUNCHERS
variable:
set(CTEST_USE_LAUNCHERS 1)
in the CTestConfig.cmake
file.
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.9/module/CTest.html