CTest

為專案配置以 CTest/CDash 進行測試

將此模組包含在專案頂層的 CMakeLists.txt 檔案中,以啟用使用 CTest 進行測試以及向 CDash 提交儀表板資料

project(MyProject)
...
include(CTest)

此模組會自動建立以下變數

BUILD_TESTING

選項,用於選擇 include(CTest) 是否呼叫 enable_testing()。當由模組建立時,此選項預設為 ON

在包含此模組之後,使用如下程式碼

if(BUILD_TESTING)
  # ... CMake code to create tests ...
endif()

以在啟用測試時建立測試。

若要啟用向 CDash 伺服器提交資料,請在專案頂層建立一個 CTestConfig.cmake 檔案,內容如下

set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC")
set(CTEST_SUBMIT_URL "http://my.cdash.org/submit.php?project=MyProject")

(CDash 伺服器可以將此檔案提供給配置 MyProject 的專案管理員)。此設定檔中的設定由此 CTest 模組和 ctest(1) 命令列 儀表板用戶端 模式 (ctest -S) 共用。

在為提交至 CDash 而建置專案時,CTest 會掃描建置輸出中的錯誤和警告,並從建置日誌中報告它們及其周圍的上下文。這種通用方法適用於所有建置工具,但不會提供有關產生特定問題的命令調用的詳細資訊。可以透過設定 CTEST_USE_LAUNCHERS 變數來獲得更詳細的報告

set(CTEST_USE_LAUNCHERS 1)

CTestConfig.cmake 檔案中。