diff --git a/tests/jcdb/jcdb.c b/tests/jcdb/jcdb.c
index aafa9112dc0f1d77975668df0e71979441836727..cb5c84914d85a2ca0cbd3c690208adb1457e8675 100644
--- a/tests/jcdb/jcdb.c
+++ b/tests/jcdb/jcdb.c
@@ -7,6 +7,7 @@
  MODULE: @PTEST_NAME@
    OPT: -json-compilation-database %{dep:@PTEST_DIR@/with_arguments.json}
  MODULE:
+ DEPS: file_without_main.c
    EXECNOW: LOG list_files.res LOG list_files.err %{bin:frama-c-script} list-files %{dep:@PTEST_DIR@/compile_commands_working.json} > @PTEST_RESULT@/list_files.res 2> @PTEST_RESULT@/list_files.err
 */
 
diff --git a/tests/jcdb/subdir.c b/tests/jcdb/subdir.c
index b0d3e34eafa52e32d04dbda2bf69a3ce8aaccb18..bedec1a5a070082ebc9a22ff4849d4ba1ff78b49 100644
--- a/tests/jcdb/subdir.c
+++ b/tests/jcdb/subdir.c
@@ -1,6 +1,7 @@
 /* run.config
    NOFRAMAC:
-   EXECNOW: LOG subdir.res LOG subdir.err (cd @PTEST_DIR@/subdir1 && @frama-c@ -add-symbolic-path $PWD/..:PWD/.. -json-compilation-database ../subdir.json ../subdir.c) > @PTEST_RESULT@/subdir.res 2> @PTEST_RESULT@/subdir.err
+   DEPS: subdir1/header.h subdir2/included.h subdir.json subdir.c included2.h
+   EXECNOW: LOG subdir.res LOG subdir.err (cd subdir1 && @frama-c@ -add-symbolic-path $PWD/..:PWD/.. -json-compilation-database ../subdir.json ../subdir.c) > @PTEST_RESULT@/subdir.res 2> @PTEST_RESULT@/subdir.err
 */
 
 // this test must be run with PWD in subdir1