我正在使用gtest为我的应用程序编写单元测试。我也有ctest运行add_test CMake命令添加的所有可执行文件。测试执行开始时是否可以通过ctest传递gtest变量?
我想例如有时用--gtest_filter标志来过滤掉测试,但我不知道如何通过ctest实现这一点?我尝试了以下方法:
ctest --gtest_filter=AppTest.*
ctest --test-arguments="--gtest_filter=AppTest.*"
但两者仍然运行所有测试而不是过滤后的测试。
谢谢!
答案 0 :(得分:0)
答案 1 :(得分:0)
答案 2 :(得分:0)
对于在2019年到这里看的任何人,最新版本的CMake都有gtest_discover_tests
(GoogleTest模块),它将把您的测试提升到CTest中,您可以从那里进行过滤。
IOW,而不是在CTest中只有一个add_test
,它将使用--gtest_list_tests
来为每个测试调用add_test
。