首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将参数从ctest传递给gtest

将参数从ctest传递给gtest
EN

Stack Overflow用户
提问于 2017-10-31 20:25:50
回答 3查看 3.8K关注 0票数 10

我正在使用gtest为我的应用程序编写单元测试。我还有一个运行所有由add_test CMake命令添加的可执行文件的ctest。在测试执行开始时,是否可以通过ctest传递gtest变量?

例如,有时我想用--gtest_filter标志过滤掉测试,但我不知道如何或是否可以通过ctest实现这一点?我尝试了以下几种方法:

代码语言:javascript
复制
ctest --gtest_filter=AppTest.*
ctest --test-arguments="--gtest_filter=AppTest.*"

但两者仍然运行所有测试,而不是过滤后的测试。

谢谢!

EN

回答 3

Stack Overflow用户

发布于 2019-07-16 21:22:07

对于2019年关注这里的任何人来说,最近的CMake版本都有gtest_discover_tests (GoogleTest模块),它可以将您的测试提升到CTest中,您可以从那里进行过滤。

它将使用--gtest_list_tests为您的每个测试调用add_test,而不是在CTest中有一个单独的add_test

票数 3
EN

Stack Overflow用户

发布于 2017-10-31 20:51:03

看看CMake的add_test add_test吧。

要从CTest中筛选出测试,可以使用-L ctest

票数 1
EN

Stack Overflow用户

发布于 2018-01-29 12:35:29

例如,要使测试的输出变得冗长:

$ make test ARGS="-V"

要运行特定测试:

$ ctest -R <regex>

NB:你可以看看this上的一些例子。

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

https://stackoverflow.com/questions/47035382

复制
相关文章

相似问题

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