diff --git a/.gitlab/ci/coverage.gitlab-ci.yml b/.gitlab/ci/coverage.gitlab-ci.yml
index 4405ae4342fa4720a27c73a2a63d88838e9b1d55..5d149ff2bfd6132049170b4d6103026a6decbaf3 100644
--- a/.gitlab/ci/coverage.gitlab-ci.yml
+++ b/.gitlab/ci/coverage.gitlab-ci.yml
@@ -1,10 +1,11 @@
 coverage:ubuntu_cpp:
   stage: coverage
-  needs: ["test:ubuntu_cpp"]
+  needs: ["build:ubuntu_cpp"]
   tags:
     - docker
   script:
     - cd build_cpp
+    - ctest --output-on-failure
     - gcovr --xml-pretty --exclude-unreachable-branches --print-summary -o coverage.xml --root ${CI_PROJECT_DIR} --filter '\.\./include/' --filter '\.\./src/'
   coverage: /^\s*lines:\s*\d+.\d+\%/
   artifacts:
@@ -17,7 +18,7 @@ coverage:ubuntu_cpp:
 
 coverage:ubuntu_python:
   stage: coverage
-  needs: ["test:ubuntu_python"]
+  needs: ["build:ubuntu_python"]
   tags:
     - docker
   script: