Поделиться через


Использование CTest для C++ в Visual Studio 2017 и более поздних версиях

Система CMake (которая включает в себя CTest) по умолчанию интегрирована в среду IDE Visual Studio как компонент рабочей нагрузки Разработка классических приложений на C++. Если вам нужно установить ее на компьютере, откройте программу Visual Studio Installer, нажмите кнопку Разработка классических приложений на C++ , а затем выберите команду Изменить. Выберите Средства CMake C++ для Windows в списке компонентов рабочей нагрузки.

Написание тестов

Поддержка CMake в Visual Studio не распространяется на систему проектов Visual Studio. Поэтому тесты CTest создаются и настраиваются так же, как в любой среде CMake. Используйте команду enable_testing(), чтобы включить тестирование, и команду add_test() или gtest_discover_tests(), чтобы добавить новый тест. Дополнительные сведения о CTest см. в документации по CMake.

Дополнительные сведения об использовании CMake в Visual Studio см. в статье о проектах CMake в Visual Studio.

Выполнение тестов

CTest полностью интегрирован с обозревателем тестов и поддерживает платформы модульного тестирования Google и Boost. Эти платформы по умолчанию включены в качестве компонентов рабочей нагрузки Разработка классических приложений на C++. Но если вы обновляете проект с более старой версии Visual Studio, может потребоваться установить эти платформы с помощью программы Visual Studio Installer.

На следующем рисунке показаны результаты выполнения CTest с использованием платформы Google Test.

CTest with Google Test Framework in Visual Studio

Если вы используете CTest, но не используете адаптеры Google или Boost, результаты будут доступны на уровне CTest, а не на отдельном уровне метода проверки. Вы сможете выполнять отладку и использовать пошаговый режим для исполняемых файлов CTest, но без трассировки стека для отдельных тестов.