diff --git a/BaseLib/BuildInfo.cpp.in b/BaseLib/BuildInfo.cpp.in
index 20059a38dd5e581571deb2887acb4ceb9953e54c..20bd9ba5f81c3beab06727c246e63732eb835c05 100644
--- a/BaseLib/BuildInfo.cpp.in
+++ b/BaseLib/BuildInfo.cpp.in
@@ -31,6 +31,8 @@ namespace BuildInfo
     const std::string ogs_version("@OGS_VERSION@");
 
     const std::string source_path("@CMAKE_CURRENT_SOURCE_DIR@");
+    const std::string data_path("@Data_SOURCE_DIR@");
+    const std::string data_binary_path("@Data_BINARY_DIR@");
     const std::string tests_tmp_path("@PROJECT_BINARY_DIR@/Tests/");
 
 }
diff --git a/BaseLib/BuildInfo.h b/BaseLib/BuildInfo.h
index ec953b89e9b4319ae7bbb3b32e779d5e7329fb36..5f55223a8838363a4d81cdcd36d9b451ba53b57f 100644
--- a/BaseLib/BuildInfo.h
+++ b/BaseLib/BuildInfo.h
@@ -33,6 +33,8 @@ namespace BuildInfo
     extern const std::string ogs_version;
 
     extern const std::string source_path;
+    extern const std::string data_path;
+    extern const std::string data_binary_path;
     extern const std::string tests_tmp_path;
 }
 }
diff --git a/scripts/cmake/SubmoduleSetup.cmake b/scripts/cmake/SubmoduleSetup.cmake
index 5ffb0a1e0141ec722548b879c1ef02ca7e2c52af..51845c42955d596c3c52a84a68b1dc1bd319b9a5 100644
--- a/scripts/cmake/SubmoduleSetup.cmake
+++ b/scripts/cmake/SubmoduleSetup.cmake
@@ -14,6 +14,8 @@ set(REQUIRED_SUBMODULES
 )
 if(OGS_BUILD_TESTS)
 	list(APPEND REQUIRED_SUBMODULES Tests/Data)
+	set(Data_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Tests/Data CACHE INTERNAL "")
+	set(Data_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/Tests/Data CACHE INTERNAL "")
 endif()
 
 foreach(SUBMODULE ${REQUIRED_SUBMODULES})
diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake
index 51ad99eae84d7ddafae2583a349491e1d2464305..96c1123882eecf526260f6c699c5ad05837bbf25 100644
--- a/scripts/cmake/test/AddTest.cmake
+++ b/scripts/cmake/test/AddTest.cmake
@@ -38,8 +38,8 @@ function (AddTest)
 	cmake_parse_arguments(AddTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
 
 	# TODO set to submodule
-	set(AddTest_SOURCE_PATH "${CMAKE_SOURCE_DIR}/Tests/Data/${AddTest_PATH}")
-	set(AddTest_BINARY_PATH "${CMAKE_BINARY_DIR}/Tests/Data/${AddTest_PATH}")
+	set(AddTest_SOURCE_PATH "${Data_SOURCE_DIR}/${AddTest_PATH}")
+	set(AddTest_BINARY_PATH "${Data_BINARY_DIR}/${AddTest_PATH}")
 	file(MAKE_DIRECTORY ${AddTest_BINARY_PATH})
 	file(TO_NATIVE_PATH "${AddTest_BINARY_PATH}" AddTest_BINARY_PATH_NATIVE)