使用 Cmake 运行 CppuTests

use*_*942 3 linux cmake

我使用CMake制作了一个库,然后制作了一个测试exe。构建后,我想自动运行我的测试用例。这是我的 CMakeLists.txt。它使 .exe 正常但不运行它。我正在使用Linux。

cmake_minimum_required (VERSION 2.8.7) 
project (tests)

set(LIBRARY_NAME exetests)
set(LIBRARY_SOURCES RunAllTests.cpp Tests.cpp )

set(CMAKE_CXX_FLAGS "-fPIC -Werror -O2 -std=c++0x -g")

add_executable(exetests ${LIBRARY_SOURCES})
target_link_libraries(exetests CppUTest )
target_link_libraries(exetests CppUTestExt )
target_link_libraries(exetests testLibrary )

#THIS IS WRONG.  EXE is not Run
add_custom_target( COMMAND ./exetests )
Run Code Online (Sandbox Code Playgroud)

Pet*_*ter 5

您可以使用CTest测试 CMake 创建的可执行文件。在 CMakeLists.txt 中,使用命令enable_testingadd_test

...
enable_testing()
...
add_executable(exetests ${LIBRARY_SOURCES})
...
add_test(NAME mytest1 COMMAND exetests)
Run Code Online (Sandbox Code Playgroud)

在您的二进制目录中,编译make exetests并运行测试ctest一些附加信息可以在CMake Wiki上找到。