У меня есть этот проект CMake, в котором мне удалось сгенерировать файл .sln, и, кажется, все прекрасно работает, когда я открываю .sln в Visual Studio и собираю его оттуда, хотя тестовый сайт не обнаружен.
Я добавил enable_testing()
в свой проект CMake и добавил
add_test(
NAME
Test${CMAKE_PROJECT_NAME}
COMMAND
./footest/Debug/foobar_tests.exe)
Когда я пытаюсь запустить набор тестов в Visual Studio, я получаю вывод:
[2019-10-28 15:33:09 Warning] Could not locate debug symbols for 'C:\Path_To_Project\build\footest\Debug\foobar_tests.exe'. To make use of '--list_content' discovery, ensure that debug symbols are available or make use of '<ForceListContent>' via a .runsettings file.
[2019-10-28 15:33:09 Informational] Test Adapter for Google Test: Test execution starting...
[2019-10-28 15:33:09 Informational] Google Test execution completed, overall duration: 00:00:00.0405041
Я не использую Google Test, я пытаюсь использовать CUnit, поэтому, возможно, мне понадобится установить тестовый адаптер для CUnit, а не для Google Test. ( Это ранее не требовалось, хотя набор тестов проекта уже успешно собран и работает в VS с использованием настройки проекта gradle, которую мне нужно заменить настройкой проекта CMake. )
Когдастоя в Path_To_Project/build/
Я могу успешно запустить набор тестов из командной строки, используя: ctest ./footest/Debug/foobar_tests.exe -C Debug
Как я могу через CMake передать VS, что я хочу, чтобы он запускал ctest
таким образом при нажатии Запустить все в VS?
РЕДАКТИРОВАТЬ: Я просто неправильно предположил, что существующее решение для сборки с использованием gradle уже может справиться с этим. Очевидно, это не тот случай, и поэтому я больше не ожидаю, что смогу решить эту проблему с помощью CMake, мне это больше не нужно.
Если у кого-то есть ответ на мой вопрос, мне все равно будет интересно.