在 Travis CI 上运行 C++ 测试时出现问题.Cmake 配置.如何在特拉维斯 ci 上运行测试套件?

trouble with running c++ test on travis ci. Cmake configuration. How run test suite on travis ci?

本文关键字:特拉维 ci 套件 运行测试 配置 问题 运行 CI Travis C++ 测试      更新时间:2023-10-16

我在Travis ci上运行测试时遇到了一点问题。我编写了Cmakelists.txt和.travis.yml文件,其中包含以下代码:

language: cpp
compiler:
- gcc
install:
- sudo apt-get install libgtest-dev
before_script:
- mkdir build
- cd build
- cmake --version
- cmake -DCMAKE_VERBOSE_MAKEFILE=ON ..
script: make && make test

和 cmakelists.txt 文件:

cmake_minimum_required( VERSION 2.6 )
project ( CodeProject )
project ( TestProject )
set( CMAKE_CXX_STANDARD 14 )
set( CMAKE_CXX_STANDARD_REQUIRED on )
include_directories ( ${CodeProject_SOURCE_DIR}/code_src/ )
include_directories ( ${TestProject_SOURCE_DIR}/test_src/ )
set ( CodeProject_SOURCES ${CodeProject_SOURCE_DIR}/code_src/main.cpp )
set ( TestProject_SOURCES ${TestProject_SOURCE_DIR}/test_src/mainTest.cpp )

set( CMAKE_EXECUTABLE_OUTPUT_PATH "build/${CodeProject}" )
add_executable( CodeProject ${CodeProject_SOURCES} )
add_executable( TestProject ${TestProject_SOURCES} )

当我尝试在travis ci上构建解决方案时,我收到以下消息:

make: *** No rule to make target `test'.  Stop.
The command "make && make test" exited with 2.

什么问题?

> 您必须先通过enable_testing()启用测试。每个测试都是由add_test()添加的(需要一个 exe 目标)。

# ...
# Enables 'test' target
enable_testing()
# Create your test executable
add_executable(TestProject ${TestProject_SOURCES})
# Register the test
add_test(NAME TestProject COMMAND TestProject)
# Add further tests ...