CTest¶
為專案配置以 CTest/CDash 進行測試
將此模組包含在專案頂層的 CMakeLists.txt 檔案中,以啟用使用 CTest 進行測試以及向 CDash 提交儀表板資料
project(MyProject)
...
include(CTest)
此模組會自動建立以下變數
選項,用於選擇
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
檔案中。