Cmake ctest能否显示googletest控制台颜色
我正在一个启用ctest的cmake项目中构建和运行使用googletest构建的单元测试 我用“ctest-VV”运行测试 但测试输出不会将“红色”和“绿色”着色 [运行][确定][通过]Cmake ctest能否显示googletest控制台颜色,cmake,googletest,ctest,Cmake,Googletest,Ctest,我正在一个启用ctest的cmake项目中构建和运行使用googletest构建的单元测试 我用“ctest-VV”运行测试 但测试输出不会将“红色”和“绿色”着色 [运行][确定][通过] 有人知道ctest是否有一个选项可以让这些颜色渗透到控制台吗?正如OP所建议的,我将这一行添加到我的.bashrc中,它起到了作用: export GTEST_COLOR=1 也许您不想将任何变量导出到全局范围,而只在一个ctest调用中使用颜色。在这种情况下,请使用以下单个命令: GTEST_COLOR
有人知道ctest是否有一个选项可以让这些颜色渗透到控制台吗?正如OP所建议的,我将这一行添加到我的.bashrc中,它起到了作用:
export GTEST_COLOR=1
也许您不想将任何变量导出到全局范围,而只在一个ctest调用中使用颜色。在这种情况下,请使用以下单个命令:
GTEST_COLOR=1 ctest -V
在cmake中,您可以通过以下方式传递环境变量:
add_executable(testExecutable
my_test.cpp)
target_link_libraries(testExecutable
gtest)
add_test(NAME testExecutable
COMMAND testExecutable)
add_custom_target(check
COMMAND env CTEST_OUTPUT_ON_FAILURE=1 GTEST_COLOR=1 ${CMAKE_CTEST_COMMAND}
DEPENDS testExecutable)
运行
$make check
时,不知道您将googletest添加到CMake的方式,也不知道您的主机环境,这只是一个猜测:这会复制到吗?你能试一下谷歌测试选项--gtest_color=yes吗?所以我试了--gtest_color=yes,但没有成功。。。但更多的谷歌搜索让我找到了GTEST_COLOR=1,在我的.travis.yml中设置了这个选项,使测试看起来是彩色的。。。但在我的命令行中,它看起来像这样1:←[0;32米[跑]←[mStringTest.Case,这表明googletest可能错误地认为我是一个xterm,而实际上我在windows命令提示符下运行bash,“export-GTEST_COLOR=1”对我有效(在Ubuntu上)。@Étienne它对我有效,thx!