diff --git a/CMakeLists.txt b/CMakeLists.txt
index 866ccfeafbb8cfc6a6f2d09f6cd646513e72774e..e0623fe83cb5692fceb22e4e4228d5418e692ce7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -16,7 +16,7 @@ include(GNUInstallDirs)
 
 option(BUILD_TESTING "Build Tests" OFF)
 option(BUILD_DOC "Build Documentation" OFF)
-enable_testing()
+include(CTest)
 
 #-------------------------------------------------------------------------------
 # Library Build Code
diff --git a/ci/bin/valgrind b/ci/bin/valgrind
index 21b7a40262eb09cd7f56f95e247359d6a6a4271c..25ce6945c949afe4ee431002c07700c3096a44ba 100755
--- a/ci/bin/valgrind
+++ b/ci/bin/valgrind
@@ -38,10 +38,10 @@ pushd $BUILD_DIRECTORY
     -DCMAKE_BUILD_TYPE=$BUILD_TYPE \
     -DBUILD_TESTING=On \
     -DENABLE_COVERAGE=$COVERAGE \
+    -DMEMORYCHECK_COMMAND_OPTIONS="--error-exitcode=1 --leak-check=full" \
     -B$BUILD_DIRECTORY -S$SOURCE_DIRECTORY
   cmake --build $BUILD_DIRECTORY --parallel 1
-  ctest --output-on-failure -L UnitTest
-  valgrind --leak-check=full --error-exitcode=255 ./test/bin/unit.t
+  ctest --output-on-failure -L UnitTest -T memcheck
 
   if [[ $COVERAGE == "On" ]]; then
     ninja vanadium_coverage