我已经使用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 )
最佳答案
您可以使用CTest测试CMake创建的可执行文件。在您的CMakeLists.txt中,使用命令enable_testing
和add_test
...
enable_testing()
...
add_executable(exetests ${LIBRARY_SOURCES})
...
add_test(NAME mytest1 COMMAND exetests)
在您的二进制目录中,编译
make exetests
并通过ctest
运行测试。可以在CMake Wiki上找到一些其他信息。