我有一个使用 CMake 的 C++ 项目,该项目在 CentOS 机器上构建。我已经配置了 CLion 来自 MacOS 远程构建。我对该项目进行了单元测试,并尝试从 CLion 中运行它们。我可以通过以下方式在 CentOS 机器上使用 CTest 运行测试。
CLion尝试以以下方式直接运行带有gtest标志的可执行文件。
ctest -r utCppProject -v
CLion尝试以以下方式直接运行带有gtest标志的可执行文件。
./utCppProject --gtest_filter=* --gtest_color=no
Process finished with exit code 0
没有实际运行的测试。
我该如何配置CLion以便能够使用CTest来运行单元测试?
这是我的用于单元测试项目的CMakeLists.txt文件。
cmake_minimum_required(VERSION 3.4.1)
include(../../cmake-dependencies/Boost.cmake)
include(../../cmake-dependencies/GoogleTest.cmake)
set(CMAKE_BINARY_DIR "${CMAKE_CURRENT_LIST_DIR}/../build")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
include_directories(${GOOGLE_TEST_DIR}/googletest/include)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/.)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../include)
set(TARGET utCppProject)
add_executable (
${TARGET}
utCppProject.cpp
)
target_link_libraries (
${TARGET}
CppProject
gtest
boost_system
pthread
)
set(CMAKE_CXX_FLAGS "-fPIC -DPIC -Wall -Werror -std=c++0x")
set(TEST_OUTPUT "${CMAKE_BINARY_DIR}/test_results/${TARGET}.xml")
add_test(${TARGET} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${TARGET})
set_tests_properties(${TARGET} PROPERTIES
ENVIRONMENT
"UT_FOLDER_PATH=${CMAKE_CURRENT_SOURCE_DIR};GTEST_OUTPUT=xml:${TEST_OUTPUT}")