gpt4 book ai didi

cmake - 如何在cmake中进行代码覆盖

转载 作者:行者123 更新时间:2023-12-03 23:58:09 26 4
gpt4 key购买 nike

我想在我的cmake项目中使用代码覆盖率工具(lcov)。
我在这里阅读示例https://github.com/bilke/cmake-modules/blob/master/CodeCoverage.cmake
使用'add_test()'cmake函数将测试添加到我的项目中。

我想创建一个自定义目标,称为“ test_coverage”,在执行该调用时应运行所有测试,收集其覆盖率数据,并在“ code_coverage”目录中生成html(使用genhtml)。

有没有办法获取项目中所有测试的列表及其目录路径,以便在自定义目标“ test_coverage”中可以单独执行每个测试并收集其覆盖率数据?

最佳答案

您可以从命令行执行'ctest -VV',并且如果所有测试都是使用add_test创建的,则将全部执行。

如果希望自定义构建目标执行相同的操作,则可以使用以下代码:

add_custom_target(run_tests
COMMAND "ctest -VV" )


我有很多cmake代码用于显示代码覆盖率和单元测试,但是在这里复制/粘贴并没有任何意义,因为听起来您才刚刚开始。

关于cmake - 如何在cmake中进行代码覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30763071/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com