diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1b96ef2639ebfc8aa16ddfd24217e72c12b5b513..e69a3926a1a15adc529a45d8c37c7aa3a5437ff5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -418,14 +418,14 @@ IF (Ceres_FOUND)
 ENDIF(Ceres_FOUND)
 
 #Build tests
-#===============EXAMPLE=========================
+#========================================
 IF(BUILD_TESTS)
   MESSAGE(STATUS "Will build tests.")
   add_subdirectory(test)
 ENDIF(BUILD_TESTS)
 
 #Build demos
-#===============EXAMPLE=========================
+#========================================
 IF(BUILD_DEMOS)
   MESSAGE(STATUS "Will build demos.")
   ADD_SUBDIRECTORY(demos)
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index f5f5247d9f4f84457774e9f39980e9b5ab820088..6fa50395a7ee2af50d290b32e543b18bac534869 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -32,7 +32,7 @@ wolf_add_gtest(gtest_example gtest_example.cpp)           #
 
 # BufferFrame
 wolf_add_gtest(gtest_buffer_frame gtest_buffer_frame.cpp)
-target_link_libraries(gtest_buffer_frame dummy)
+target_link_libraries(gtest_buffer_frame PUBLIC dummy)
 
 # CaptureBase class test
 wolf_add_gtest(gtest_capture_base gtest_capture_base.cpp)
@@ -48,15 +48,15 @@ wolf_add_gtest(gtest_factor_autodiff gtest_factor_autodiff.cpp)
 
 # Factory test
 wolf_add_gtest(gtest_factory gtest_factory.cpp)
-target_link_libraries(gtest_factory dummy)
+target_link_libraries(gtest_factory PUBLIC dummy)
 
 # FactoryStateBlock factory test
 wolf_add_gtest(gtest_factory_state_block gtest_factory_state_block.cpp)
-target_link_libraries(gtest_factory_state_block dummy)
+target_link_libraries(gtest_factory_state_block PUBLIC dummy)
 
 # Node Emplace test
 wolf_add_gtest(gtest_emplace gtest_emplace.cpp)
-target_link_libraries(gtest_emplace dummy)
+target_link_libraries(gtest_emplace PUBLIC dummy)
 
 # FeatureBase classes test
 wolf_add_gtest(gtest_feature_base gtest_feature_base.cpp)
@@ -90,11 +90,11 @@ wolf_add_gtest(gtest_parser_yaml gtest_parser_yaml.cpp)
 
 # Problem class test
 wolf_add_gtest(gtest_problem gtest_problem.cpp)
-target_link_libraries(gtest_problem dummy)
+target_link_libraries(gtest_problem PUBLIC dummy)
 
 # ProcessorBase class test
 wolf_add_gtest(gtest_processor_base gtest_processor_base.cpp)
-target_link_libraries(gtest_processor_base dummy)
+target_link_libraries(gtest_processor_base PUBLIC dummy)
 
 # ProcessorMotion class test
 wolf_add_gtest(gtest_processor_motion gtest_processor_motion.cpp)
@@ -208,11 +208,11 @@ wolf_add_gtest(gtest_processor_and_factor_pose_3d_with_extrinsics gtest_processo
 
 # ProcessorTrackerFeatureDummy class test
 wolf_add_gtest(gtest_processor_tracker_feature_dummy gtest_processor_tracker_feature_dummy.cpp)
-target_link_libraries(gtest_processor_tracker_feature_dummy dummy)
+target_link_libraries(gtest_processor_tracker_feature_dummy PUBLIC dummy)
 
 # ProcessorTrackerLandmarkDummy class test
 wolf_add_gtest(gtest_processor_tracker_landmark_dummy gtest_processor_tracker_landmark_dummy.cpp)
-target_link_libraries(gtest_processor_tracker_landmark_dummy dummy)
+target_link_libraries(gtest_processor_tracker_landmark_dummy PUBLIC dummy)
 
 # SensorDiffDriveSelfcalib class test
 wolf_add_gtest(gtest_sensor_diff_drive gtest_sensor_diff_drive.cpp)
diff --git a/test/gtest/CMakeLists.txt b/test/gtest/CMakeLists.txt
index 9450a2925657ac2d909dde56a6496bec2f60d93e..593ce09bca26f7754d7148b930504819eb1fa450 100644
--- a/test/gtest/CMakeLists.txt
+++ b/test/gtest/CMakeLists.txt
@@ -63,7 +63,12 @@ else()
     GIT_REPOSITORY https://github.com/google/googletest.git 
     GIT_TAG main)
 
-  FetchContent_MakeAvailable(googletest)
+  #FetchContent_MakeAvailable(googletest)
+  FetchContent_GetProperties(googletest)
+  if(NOT googletest_POPULATED)
+    FetchContent_Populate(googletest)
+    add_subdirectory(${googletest_SOURCE_DIR} ${googletest_BINARY_DIR} EXCLUDE_FROM_ALL)
+  endif()
     
 endif()
   
@@ -71,10 +76,10 @@ function(wolf_add_gtest target)
   add_executable(${target} ${ARGN})
   if(${CMAKE_VERSION} VERSION_LESS "3.11.0") 
     add_dependencies(${target} libgtest)
-    target_link_libraries(${target} libgtest ${PLUGIN_NAME})
+    target_link_libraries(${target} PUBLIC libgtest ${PLUGIN_NAME})
     target_include_directories(${target} PUBLIC ${GTEST_INCLUDE_DIRS})
   else()
-    target_link_libraries(${target} gtest_main ${PLUGIN_NAME})
+    target_link_libraries(${target} PUBLIC gtest_main ${PLUGIN_NAME})
   endif()
   add_test(NAME ${target} COMMAND ${target})
 endfunction()