diff --git a/Makefile b/Makefile
index c09c4cc7adbdf473f58c1f8c82b539f627e80760..c2888caca9f4ea9fb9606d5f217b98362dc07576 100644
--- a/Makefile
+++ b/Makefile
@@ -41,7 +41,7 @@ makelinksim:
 	@make -C linksimulator/
 
 # It is likely that you will need to update this
-tests: all
+tests: debug
 	@./tests/run_tests.sh
 
 # By default, logs are disabled. But you can enable them with the debug target.
diff --git a/tests/advanced_test.sh b/tests/advanced_test.sh
index 540a1f6ac6da8d9004315edcca79f7cb5a4ec8f5..a8258bda72cbfe847a8426fed928e584cca8aa5f 100755
--- a/tests/advanced_test.sh
+++ b/tests/advanced_test.sh
@@ -7,26 +7,32 @@ fi
 
 FILENAME=$1
 BASENAME=$(basename $FILENAME)
+TEST_OUTPUT_FILES='unwanted_logs/advanced_tests'
 BSN_PRE="${BASENAME%.*}"
 BSN_EXT="${BASENAME##*.}"
 GREEN='\033[0;32m'
 NC='\033[0m'
 
 # Create the logs directory 
-mkdir unwanted_logs 2>/dev/null  
+mkdir ${TEST_OUTPUT_FILES}/ 2>/dev/null  
 
 # cleanup d'un test précédent
-rm -f ./unwanted_logs/adv_${BSN_PRE}_received_file.${BSN_EXT} ./unwanted_logs/adv_valgrind_${BSN_PRE}_receiver.log ./unwanted_logs/adv_valgrind_${BSN_PRE}_sender.log
-touch ./unwanted_logs/adv_${BSN_PRE}_received_file.${BSN_EXT} ./unwanted_logs/adv_valgrind_${BSN_PRE}_receiver.log ./unwanted_logs/adv_valgrind_${BSN_PRE}_sender.log
+rm -f ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_received_file.${BSN_EXT} \
+      ${TEST_OUTPUT_FILES}/adv_valgrind_${BSN_PRE}_receiver.log \
+      ${TEST_OUTPUT_FILES}/adv_valgrind_${BSN_PRE}_sender.log
+touch ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_received_file.${BSN_EXT} \
+      ${TEST_OUTPUT_FILES}/adv_valgrind_${BSN_PRE}_receiver.log \
+      ${TEST_OUTPUT_FILES}/adv_valgrind_${BSN_PRE}_sender.log
 
 
 # We first launch the link simulator 
-./linksimulator/link_sim -p 65027 -P 65139 -l 70 -d 1500 -e 20 -c 10 -R &>./unwanted_logs/adv_${BSN_PRE}_link.log &
+./linksimulator/link_sim -p 65027 -P 65139 -l 70 -d 1500 -e 20 -c 10 -R &>${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_link.log &
 link_pid=$!
 
 # On lance le receiver et capture sa sortie standard
-valgrind --leak-check=full --log-file=./unwanted_logs/adv_${BSN_PRE}_valgrind_receiver.log ./receiver ::1 65139 1> ./unwanted_logs/adv_${BSN_PRE}_received_file.${BSN_EXT} 2> ./unwanted_logs/adv_${BSN_PRE}_receiver.log &
-receiver_pid=$!
+valgrind --leak-check=full --log-file=${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_valgrind_receiver.log \
+              ./receiver ::1 65139 1> ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_received_file.${BSN_EXT} \
+              2> ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_receiver.log & receiver_pid=$!
 
 cleanup()
 {
@@ -37,9 +43,10 @@ cleanup()
 trap cleanup SIGINT  # Kill les process en arrière plan en cas de ^-C
 
 # On démarre le transfert
-if ! valgrind --leak-check=full --log-file=./unwanted_logs/adv_valgrind_${BSN_PRE}_receiver.log ./sender -f ${FILENAME} ::1 65027 2> ./unwanted_logs/adv_${BSN_PRE}_sender.log ; then
+if ! valgrind --leak-check=full --log-file=${TEST_OUTPUT_FILES}/adv_valgrind_${BSN_PRE}_receiver.log \
+    ./sender -f ${FILENAME} ::1 65027 2> ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_sender.log ; then
   echo "Crash du sender!"
-  cat ./unwanted_logs/adv_${BSN_PRE}_sender.log
+  cat ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_sender.log
   err=1  # On enregistre l'erreur
 fi
 
@@ -52,7 +59,7 @@ if kill -0 $receiver_pid &> /dev/null ; then
 else  # On teste la valeur de retour du receiver
   if ! wait $receiver_pid ; then
     echo "Crash du receiver!"
-    cat ./unwanted_logs/adv_${BSN_PRE}_receiver.log
+    cat ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_receiver.log
     err=1
   fi
 fi
@@ -62,12 +69,12 @@ kill -9 $link_pid
 wait $link_pid 2>/dev/null
 
 # On vérifie que le transfert s'est bien déroulé
-if [[ "$(md5sum ${FILENAME} | awk '{print $1}')" != "$(md5sum ./unwanted_logs/adv_${BSN_PRE}_received_file.${BSN_EXT} | awk '{print $1}')" ]]; then
+if [[ "$(md5sum ${FILENAME} | awk '{print $1}')" != "$(md5sum ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_received_file.${BSN_EXT} | awk '{print $1}')" ]]; then
   echo "Le transfert a corrompu le fichier!"
   echo "Diff binaire des deux fichiers: (attendu vs produit)"
-  diff -C 9 <(od -Ax -t x1z ${FILENAME}) <(od -Ax -t x1z ./unwanted_logs/adv_${BSN_PRE}_received_file.${BSN_EXT})
+  diff -C 9 <(od -Ax -t x1z ${FILENAME}) <(od -Ax -t x1z ${TEST_OUTPUT_FILES}/adv_${BSN_PRE}_received_file.${BSN_EXT})
   exit 1
 else
-  echo -e "${GREEN}Le transfert est réussi!${NC}"
+  echo -e "${GREEN}The transfer has succeeded!${NC}"
   exit ${err:-0}  # En cas d'erreurs avant, on renvoie le code d'erreur
 fi
\ No newline at end of file
diff --git a/tests/run_tests.sh b/tests/run_tests.sh
index 3eea596b7eb4c8c198174ad1da564715e103a5c4..38622cccac86a2e91b10889ad98d2b4d0e08a401 100755
--- a/tests/run_tests.sh
+++ b/tests/run_tests.sh
@@ -4,8 +4,10 @@
 FILESIZE="" 
 TEST_FILES_DIR=./test_files/
 
+rm -rf ./unwanted_logs/*
+
 # We want our tests to always use valgrind 
-echo "Starting simple tests ..."
+echo -e "\nStarting simple tests ...\n"
 for FILENAME in "$TEST_FILES_DIR"/*
 do 
   FILESIZE=$(stat -c%s "$FILENAME")
@@ -18,10 +20,10 @@ do
   fi
 
 done
-echo "Finished Simple tests."
+echo -e "Finished Simple tests."
 
 if [ -d linksimulator/ ]; then
-  echo "Starting ... advanced tests !"
+  echo -e "\nStarting ... advanced tests !\n"
   # Now we ran advnced tests
   for FILENAME in "$TEST_FILES_DIR"/*
   do 
diff --git a/tests/simple_test.sh b/tests/simple_test.sh
index b70b30ff7fb5cb44838e539182304e75b8cc7f49..6f9210a0b6ea5ce7b353e0eab17d5c7c5008d822 100755
--- a/tests/simple_test.sh
+++ b/tests/simple_test.sh
@@ -7,23 +7,33 @@ fi
 
 FILENAME=$1
 BASENAME=$(basename $FILENAME)
+TEST_OUTPUT_FILES='unwanted_logs/simple_test'
 BSNM_PRE="${BASENAME%.*}"
 BSNM_EXT="${BASENAME##*.}"
 GREEN='\033[0;32m'
 NC='\033[0m'
 
 # Create the logs directory 
-mkdir unwanted_logs 2>/dev/null  
+mkdir ${TEST_OUTPUT_FILES}/ 2>/dev/null  
 
 
 # Cleanup d'un test précédent
-rm -f ./unwanted_logs/${BSNM_PRE}_received_file.${BSNM_EXT} ./unwanted_logs/valgrind_${BSNM_PRE}_receiver.log ./unwanted_logs/valgrind_${BSNM_PRE}_sender.log ./unwanted_logs/${BSNM_PRE}_sender.log ./unwanted_logs/${BSNM_PRE}_receiver.log
-touch ./unwanted_logs/${BSNM_PRE}_received_file.${BSNM_EXT} ./unwanted_logs/valgrind_${BSNM_PRE}_receiver.log ./unwanted_logs/valgrind_${BSNM_PRE}_sender.log ./unwanted_logs/${BSNM_PRE}_sender.log ./unwanted_logs/${BSNM_PRE}_receiver.log
+rm -f ${TEST_OUTPUT_FILES}/${BSNM_PRE}_received_file.${BSNM_EXT} \
+      ${TEST_OUTPUT_FILES}/valgrind_${BSNM_PRE}_receiver.log \
+      ${TEST_OUTPUT_FILES}/valgrind_${BSNM_PRE}_sender.log \
+      ${TEST_OUTPUT_FILES}/${BSNM_PRE}_sender.log \
+      ${TEST_OUTPUT_FILES}/${BSNM_PRE}_receiver.log
+touch ${TEST_OUTPUT_FILES}/${BSNM_PRE}_received_file.${BSNM_EXT} \
+      ${TEST_OUTPUT_FILES}/valgrind_${BSNM_PRE}_receiver.log \
+      ${TEST_OUTPUT_FILES}/valgrind_${BSNM_PRE}_sender.log \
+      ${TEST_OUTPUT_FILES}/${BSNM_PRE}_sender.log \
+      ${TEST_OUTPUT_FILES}/${BSNM_PRE}_receiver.log
 
 
 # On lance le receiver et capture sa sortie standard
-valgrind --leak-check=full --log-file=./unwanted_logs/valgrind_${BSNM_PRE}_receiver.log ./receiver ::1 65197 1> ./unwanted_logs/${BSNM_PRE}_received_file.${BSNM_EXT} 2> ./unwanted_logs/${BSNM_PRE}_receiver.log &
-receiver_pid=$!
+valgrind --leak-check=full --log-file=${TEST_OUTPUT_FILES}/valgrind_${BSNM_PRE}_receiver.log \
+              ./receiver ::1 65197 1> ${TEST_OUTPUT_FILES}/${BSNM_PRE}_received_file.${BSNM_EXT} \
+              2> ${TEST_OUTPUT_FILES}/${BSNM_PRE}_receiver.log & receiver_pid=$!
 
 cleanup()
 {
@@ -34,9 +44,10 @@ cleanup()
 trap cleanup SIGINT  # Kill les process en arrière plan en cas de ^-C
 
 # We start the transfer
-if ! valgrind --leak-check=full --log-file=./unwanted_logs/valgrind_${BSNM_PRE}_sender.log ./sender -f ${FILENAME} ::1 65197 2> ./unwanted_logs/${BSNM_PRE}_sender.log ; then
+if ! valgrind --leak-check=full --log-file=${TEST_OUTPUT_FILES}/valgrind_${BSNM_PRE}_sender.log \
+    ./sender -f ${FILENAME} ::1 65197 2> ${TEST_OUTPUT_FILES}/${BSNM_PRE}_sender.log ; then
   echo "The sender crashed!"
-  cat ./unwanted_logs/${BSNM_PRE}_sender.log
+  cat ${TEST_OUTPUT_FILES}/${BSNM_PRE}_sender.log
   err=1  # On enregistre l'erreur
 fi
 
@@ -49,16 +60,16 @@ if kill -0 $receiver_pid &> /dev/null ; then
 else  # We check the return value of the receiver
   if ! wait $receiver_pid ; then
     echo "The receiver crashed!"
-    cat ./unwanted_logs/${BSNM_PRE}_receiver.log
+    cat ${TEST_OUTPUT_FILES}/${BSNM_PRE}_receiver.log
     err=1
   fi
 fi
 
 # We check that the transfer ran through properly
-if [[ "$(md5sum ${FILENAME} | awk '{print $1}')" != "$(md5sum ./unwanted_logs/${BSNM_PRE}_received_file.${BSNM_EXT} | awk '{print $1}')" ]]; then
+if [[ "$(md5sum ${FILENAME} | awk '{print $1}')" != "$(md5sum ${TEST_OUTPUT_FILES}/${BSNM_PRE}_received_file.${BSNM_EXT} | awk '{print $1}')" ]]; then
   echo "The transfer has corrupted the file!"
   echo "Diff binaire des deux fichiers: (attendu vs produit)"
-  diff -C 9 <(od -Ax -t x1z ${FILENAME}) <(od -Ax -t x1z ./unwanted_logs/${BSNM_PRE}_received_file.${BSNM_EXT})
+  diff -C 9 <(od -Ax -t x1z ${FILENAME}) <(od -Ax -t x1z ${TEST_OUTPUT_FILES}/${BSNM_PRE}_received_file.${BSNM_EXT})
   exit 1
 else
   echo -e "${GREEN}The transfer has succeeded!${NC}"