我正在尝试对我使用CMake + CTest的项目进行覆盖率分析。我创建了一个简单的TestingScript.cmake,它看起来像:
set(CTEST_SOURCE_DIRECTORY .)
set(CTEST_BINARY_DIRECTORY build_coverage)
ctest_start(TestCoverage)
ctest_coverage(BUILD ${CTEST_BINARY_DIR})
我正试图用:
运行它doriad@david-desktop:~/build/Examples/Coverage$ ctest -S ~/src/Examples/Coverage/TestingScript.cmake
Cannot locate CTest configuration: in BuildDirectory: /home/doriad/build/Examples/Coverage/build_coverage/CTestConfig.cmake
Cannot locate CTest configuration: in SourceDirectory: /home/doriad/build/Examples/Coverage/CTestConfig.cmake
Cannot find any coverage files. Ignoring Coverage request.
我需要做些什么来制作它正在寻找的CTestConfig.cmake文件?
答案 0 :(得分:2)
文件CTestConfig.cmake
通常由CDash生成。登录CDash后,选择设置>项目>其他>下载CTestConfig 。该文件包含用于将结果提交到仪表板服务器的配置。
模块的默认设置是将仪表板提交到Kitware的公共仪表板,在那里您可以免费注册您的项目。
要提交到源的顶级目录中的其他服务器
CTestConfig.cmake
,并设置自己的信息中心首选项。如果您使用的是CDash服务器,则可以从该服务器上的相应项目页面下载预配置文件(设置 / 项目,选项卡其他 )。来源:https://gitlab.kitware.com/cmake/community/wikis/doc/ctest/Testing-With-CTest
另一个问题是,由于您跳过了测试脚本中的构建和测试步骤,因此您没有要提交的覆盖文件。