首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >cmake/ctest:可以使用构建目标的创建作为测试吗?

cmake/ctest:可以使用构建目标的创建作为测试吗?
EN

Stack Overflow用户
提问于 2011-10-14 05:24:26
回答 2查看 1.5K关注 0票数 3

我有一个程序,读取一个文件格式(国际标准化组织10303-11的好奇心)的描述,并从它生成c++。生成的代码被编译到一个库中,并且该库与各种可执行文件相链接,以读/写该文件格式。

我设置了CMake来构建生成器程序并为在配置时指定的任何文件格式生成库。

现在,我想添加测试。这些测试与构建过程中已经完成的步骤相同-我是否必须在CTest脚本中重做这些步骤,或者是否有方法告诉ctest构建目标并捕获任何错误消息?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-15 19:07:16

如果您使用的是足够新的ctest版本(最新的官方发行版是2.8.6),那么您可以使用add_test的名称/命令签名,以及cmake --build命令行选项,在构建树中构建特定的目标。

例如,假设有一个名为“tgt1”的自定义目标(或库或可执行目标),下面的代码应该可以工作:

代码语言:javascript
运行
复制
add_test(NAME test.build.tgt1
  WORKING_DIRECTORY ${CMAKE_BINARY_DIRECTORY}
  COMMAND ${CMAKE_COMMAND} --build . --target tgt1 --config $<CONFIGURATION>
)

这在任何地方都可以使用相同的语法来跨平台工作。它甚至可以与多配置生成器一起使用,比如Visual Studio和Xcode。

票数 3
EN

Stack Overflow用户

发布于 2011-10-14 10:44:10

您是否尝试过在CMakeLists.txt文件中输入enable_testing(),然后调用add_test()作为测试目标?我认为如果您遵循CMake文档,您可以在一个统一的构建脚本中执行所有操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7760605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档