4 marca 2019

Googletest w środowisku Windows

Poniżej pokazuje jak szybko, łatwo i bez stresu dodać testy jednostkowe do projektu c++ w środowisku windows.

  1. Pobieramy kod biblioteki googletest (opens new window) i umieszczamy w dogodnym miejscu.
googletest windows local directory
  1. 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
  1. 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)
  1. Gotowe. Możemy uruchomić testy. Poniżej widok z konsoli CLion.
googletest clion variable