Poniżej pokazuje jak szybko, łatwo i bez stresu dodać testy jednostkowe do projektu c++ w środowisku windows.
- Pobieramy kod biblioteki googletest (opens new window) i umieszczamy w dogodnym miejscu.
![googletest windows local directory googletest windows local directory](/images/posts/2019/googletest_windows/googletest1.png?v=abb545)
- Dodajemy zmienną środowiskową zawierającą ścierkę do biblioteki. Wygodne narzędzie do tego celu jest opisane w tym wpisie. Konieczne może okazać się ponowne zalogowanie, aby zmiana była widoczna z poziomu cmake.
![googletest enviroment variable googletest enviroment variable](/images/posts/2019/googletest_windows/googletest_env_variable.png?v=abb545)
- Modyfikujemy plik cmake, jak pokazano. Poniżej plik cmake z jednego z moich projektów.
cmake_minimum_required(VERSION 3.13)
project(Interval_container)
add_subdirectory($ENV{gtest_DIR}/ gtest)
include_directories($ENV{gtest_DIR}/googletest/include $ENV{gtest_DIR}/googletest)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x")
set(CMAKE_CXX_STANDARD 14)
add_executable(Interval_container_tests IntervalMap.h Tests/tests.cpp)
target_link_libraries(Interval_container_tests gtest gtest_main)
Istotne fragmenty:
Dodajemy zewnętrzny projekt do naszego cmake
.
add_subdirectory($ENV{gtest_DIR}/ gtest)
Definiujemy foldery z plikami nagłówkowymi:
include_directories($ENV{gtest_DIR}/googletest/include $ENV{gtest_DIR}/googletest)
Linkujemy gtest
z naszym projektem
target_link_libraries(Interval_container_tests gtest gtest_main)
- Gotowe. Możemy uruchomić testy. Poniżej widok z konsoli CLion.
![googletest clion variable googletest clion variable](/images/posts/2019/googletest_windows/googletest_clion.png?v=abb545)