在cmake中集成bash测试脚本

nop*_*per 3 c++ bash cmake

我有一个C++ cmake项目,它使用Boost Test进行单元测试.现在我想向cmake公开一系列bash脚本(用于集成测试).假设每个脚本在PASS或其他情况下返回0 !如果是FAILURE,则返回0 = 0 .我希望每次运行时都会执行每个脚本cmake test.

获得此类行为的最简单,最快捷的方法是什么

ran*_*ame 7

基本上,您希望首先找到bash程序

find_program (BASH_PROGRAM bash)
Run Code Online (Sandbox Code Playgroud)

然后只需将您的脚本添加到测试列表中

if (BASH_PROGRAM)
  add_test (mytest ${BASH_PROGRAM} ${CMAKE_CURRENT_SOURCE_DIR}/script.sh)
endif (BASH_PROGRAM)
Run Code Online (Sandbox Code Playgroud)

所有这一切都应该奏效.