相关疑难解决方法(0)

CMake:如何对您自己的 CMake 脚本宏/函数进行单元测试?

我已经围绕标准 CMake 命令编写了一些方便的包装器,并希望对该 CMake 脚本代码进行单元测试以确保其功能。

我已经取得了一些进展,但有两件事我希望得到帮助:

  1. 是否有一些“官方”方法可以对您自己的 CMake 脚本代码进行单元测试?类似于运行 CMake 的特殊模式?我的目标是“白盒测试”(尽可能多)。
  2. 如何处理全局变量和变量作用域问题?通过加载项目的缓存、配置测试 CMake 文件或通过 -D 命令行选项推送它,将全局变量注入到测试中?变量范围的模拟/测试(缓存与非缓存、宏/函数/包含、通过引用传递的参数)?

首先,我研究了 /Tests 下,特别是 Tests/CMakeTests 下的 CMake 源代码(我使用的是 CMake 版本 2.8.10)。有大量的品种可供发现,而且看起来其中很多都专门针对单个测试用例。

因此,我还研究了一些可用的 CMake 脚本库(例如CMake++)来查看它们的解决方案,但是当它们进行单元测试时,它们在很大程度上取决于它们自己的库函数。

unit-testing mocking cmake ctest

5
推荐指数
1
解决办法
3346
查看次数

标签 统计

cmake ×1

ctest ×1

mocking ×1

unit-testing ×1