通过在项目根目录下的CMakeLists.txt配置文件中添加
enable_testing()
可以开启项目的测试功能。
一定要在根目录下的CMakeLists.txt中开启,不然执行make test时会报错。
随后项目的cmake配置文件中可以添加add_test指令
add_test(NAME <name> [CONFIGURATIONS [Debug|Release|...]]
[WORKING_DIRECTORY dir]
COMMAND <command> [arg1 [arg2 ...]])
其中通过NAME关键值指定本测试的名称,可以随意命名,
Debug/Release选项可以控制在不同的编译版本下是否进行测试。
通过WORKING_DIRECTORY可以设置工作路径,command表示可运行程序
比如:
ADD_TEST(NAME test1 COMMAND main)
你可以不对结果进行检查,但大多数情况下你都需要检查test1的输出结果,可以通过如下:
set_tests_properties(test1 PROPERTIES PASS_REGULAR_EXPRESSION "Hello Cmake")
运行cmake && make test结果如下:
Start 1: test1
1/1 Test #1: test1 ............................ Passed 0.00 sec
100% tests passed, 0 tests failed out of 1
如果失败的话,也会有提示
Start 1: test1
1/1 Test #1: test1 ............................***Failed Required regular expression not found.Regex=[Hello
] 0.00 sec
0% tests passed, 1 tests failed out of 1