Я пытаюсь заставить CMake обнаруживать тесты при фактическом вызове, а не во время сборки, используя генератор Ninja Multi-Config. Сначала я думал, что установка DISCOVERY_MODE на PRE_TEST в gtest_discover_tests должна решить эту проблему, но, видимо, нет.
Вот минимальный воспроизводимый пример. Нам нужны следующие файлы:
Запуск mytest работает напрямую (он показывает неудачный подтест ParamTestSuite/ParamTest.Test1/1), но с помощью CTest новый тест не обнаруживается и не выполнен (выполняется только один подтест). Можно ли это решить?
Я пытаюсь заставить CMake обнаруживать тесты при фактическом вызове, а не во время сборки, используя генератор Ninja Multi-Config. Сначала я думал, что установка DISCOVERY_MODE на PRE_TEST в gtest_discover_tests должна решить эту проблему, но, видимо, нет. Вот минимальный воспроизводимый пример. Нам нужны следующие файлы: [list] [*][code]CMakeLists.txt[/code] [code] cmake_minimum_required(VERSION 3.24) project(dynamic_gtests CXX)
[/list] Теперь я выполняю следующие команды: [code]mkdir data echo 42 > data/answer.txt cmake --preset default cmake --build --preset default ctest --preset default [/code] Тест пройден успешно. После этого давайте создадим новый файл данных для этого теста и попробуем его запустить: [code]echo 43 > data/incorrect.txt ./build/Debug/mytest cmake --build --preset default ctest --preset default [/code] Запуск mytest работает напрямую (он показывает неудачный подтест ParamTestSuite/ParamTest.Test1/1), но с помощью CTest новый тест не обнаруживается и не выполнен (выполняется только один подтест). Можно ли это решить?
В настоящее время я переношу проект Qt5 на основе QtCreator/QMake в среду VSCode/CMake.
Я перенес файлы pro в файлы CMakeLists в основном проекте, и это прекрасно работает в VSCode.
Проблема Я столкнулся с проблемой интеграции модульных тестов,...
В качестве минимального примера (это часть более крупного проекта), у меня есть следующие три файла в проекте со следующей структурой:
.
├── src
│ ├── binary_search.cpp
└── test
├── CMakeLists.txt
├── build
└── test_binary_search.cpp...
В качестве минимального примера (это часть более крупного проекта), у меня есть следующие три файла в проекте со следующей структурой:
.
├── src
│ ├── binary_search.cpp
└── test
├── CMakeLists.txt
├── build
└── test_binary_search.cpp...
В качестве минимального примера (это часть более крупного проекта), у меня есть следующие три файла в проекте со следующей структурой:
.
├── src
│ ├── binary_search.cpp
└── test
├── CMakeLists.txt
├── build
└── test_binary_search.cpp...
В качестве минимального примера (это часть более крупного проекта), у меня есть следующие три файла в проекте со следующей структурой:
.
├── src
│ ├── binary_search.cpp
└── test
├── CMakeLists.txt
├── build
└── test_binary_search.cpp...