diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d086baece7e488a9b6c86b917ddaacb782a69c72..dc0902380bc7c12eceed4dc91af630ff888a7673 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,5 +1,6 @@
 stages:
   - build
+  - test
 
 variables:
   BUILD_ENV_DOCKER_IMAGE: docker-registry.ebrains.eu/tc/ebrains-spack-build-env/okd:devel
@@ -180,15 +181,17 @@ build-spack-env-on-runner:
   script:
     # run installation script
     - . install_spack_env.sh $CI_PROJECT_DIR $SPACK_VERSION $CI_PROJECT_DIR $SPACK_DEV_ENV $SPACK_PATH_GITLAB
+    # re-activate envionment and run tests
+    - spack env activate $SPACK_DEV_ENV
     - spack test run
   after_script:
-    - mv /tmp/spack_tests $CI_PROJECT_DIR
     - mkdir -p $CI_PROJECT_DIR/spack_logs/installed $CI_PROJECT_DIR/spack_logs/not_installed
       # for succesfully installed packages: keep the spack logs for any package modified during this CI job
     - PKG_DIR=$CI_PROJECT_DIR/spack/opt/spack/linux-ubuntu20.04-x86_64/gcc-10.3.0
     - if cd $PKG_DIR; then find . \( -name ".spack" -o -name ".build" -o -name ".spack_test_results" \) -exec cp -r --parents "{}" $CI_PROJECT_DIR/spack_logs/installed \;; fi
       # for not succesfully installed packages: also keep the spack logs for any packages that failed
     - if cd /tmp/$(whoami)/spack-stage/; then find . -maxdepth 2 -name "*.txt" -exec cp --parents "{}" $CI_PROJECT_DIR/spack_logs/not_installed \;; fi
+    - if [ -d /tmp/spack_tests ]; then mv /tmp/spack_tests $CI_PROJECT_DIR; fi
   artifacts:
     paths:
       - spack_logs
@@ -228,3 +231,29 @@ sync-gitlab-spack-instance:
   rules:
     - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PROJECT_NAMESPACE =~ /technical-coordination/
       when: manual
+
+test-gitlab-spack-instance:
+  stage: test
+  tags:
+    - docker-runner
+    - read-write
+  image: $GITLAB_BUILD_ENV_DOCKER_IMAGE
+  variables:
+    SPACK_NFS_ENV: ebrains-runner-build
+    SPACK_REPO_PATH: $SPACK_PATH_GITLAB/ebrains-spack-builds
+    SPACK_USER_CACHE_PATH: $SPACK_PATH_GITLAB/spack/.spack
+    SPACK_USER_CONFIG_PATH: $SPACK_PATH_GITLAB/spack/.spack
+  script:
+    - source $SPACK_PATH_GITLAB/spack/share/spack/setup-env.sh
+    - spack env activate $SPACK_NFS_ENV
+    - spack test run
+  after_script:
+    - if [ -d /tmp/spack_tests ]; then mv /tmp/spack_tests $CI_PROJECT_DIR; fi
+  artifacts:
+    paths:
+      - spack_tests
+    when: always
+  rules:
+    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PROJECT_NAMESPACE =~ /technical-coordination/
+    - if: $CI_PIPELINE_SOURCE == "schedule" && $TEST_DEPLOYMENT == "true"
+