Простейший пример использования Google C ++ Testing Framework с CMake - PullRequest
25 голосов
/ 05 мая 2011

У меня очень простая библиотека C ++ (один заголовочный файл, один .cpp файл).Я хочу написать модульные тесты для этого проекта с использованием Google C ++ Testing Framework.

Вот структура каталогов:

~/project1
 |
 |-- project1.cpp
 |-- project1.h
 |-- project1_unittests.cpp
 \-- CMakeLists.txt

Я не планирую писать собственную функцию main ().Я хочу связать с gtest_main, как указано в primer .Что должен содержать CMakeLists.txt?

1 Ответ

25 голосов
/ 05 мая 2011

Включить встроенную подсистему тестирования CMake:

# For make-based builds, defines make target named test.
# For Visual Studio builds, defines Visual Studio project named RUN_TESTS.
enable_testing()

Скомпилировать исполняемый файл, который будет запускать ваши модульные тесты, и связать его с gtest и gtest_main:

add_executable(runUnitTests
    project1_unittests.cpp
)
target_link_libraries(runUnitTests gtest gtest_main)

Добавить тест, которыйзапускает этот исполняемый файл:

add_test(
    NAME runUnitTests
    COMMAND runUnitTests
)
...