diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml
index af14d6cb44f15422a53dd633e9d810417c092279..8146ff5bd3ee73625e797a400a321ad14345346f 100644
--- a/.github/workflows/build-and-test.yml
+++ b/.github/workflows/build-and-test.yml
@@ -21,4 +21,4 @@ jobs:
       - name: install
         run: cmake --build --preset ninja --verbose --target install
       - name: test
-        run: cmake --build --preset ninja --verbose --target test
+        run: cmake --build --preset ninja --verbose --target check
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ef48ac0dcc0856a7d19595c6b793cb313bb5d934..9f7daf021460d06c421297471396730ae8cef6a7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -54,7 +54,9 @@ endif ()
 add_subdirectory(src)
 
 if (IS_TOP_LEVEL AND BUILD_TESTING)
-    add_subdirectory(tests)
+    add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} -V)
+
+    add_subdirectory(tests EXCLUDE_FROM_ALL)
 endif ()
 
 option(LoadStaticSharedTargets_INCLUDE_PACKAGING "Include packaging rules for LoadStaticSharedTargets" "${IS_TOP_LEVEL}")