diff --git a/runtest.sh b/runtest.sh
index f8ddc5d..53a2982 100755
--- a/runtest.sh
+++ b/runtest.sh
@@ -1,36 +1,42 @@
 #!/bin/bash
 
-# TODO :
-# - passer le nom du script selenium en argument
-# - si zenity n'est pas disponible, faire un menu en mode texte
-
-
 # ------------------------------------------------------------------------
-# exécuter le test et tuer le processus quand le message de fin apparait
-# ceci pour essayer de contourner le bug qui envoie le message ci-dessous :
+#
+# Exécuter un ou plusieurs tests d'un fichier selenium
+# au préalable :
+# - convertir le fichier généré par l'IDE dans le format attendu par le runner
+# - copier « au bon endroit » (/tmp) les fichiers pour les tests d'import
+#
+# Remarque : je tue le processus quand le message de fin apparait
+# pour essayer de contourner le bug qui envoie le message ci-dessous :
 #
 # Jest did not exit one second after the test run has completed.
-#
 # 'This usually means that there are asynchronous operations that
 # weren't stopped in your tests. Consider running Jest with
 # `--detectOpenHandles` to troubleshoot this issue.
 # voir aussi https://github.com/SeleniumHQ/selenium-ide/issues/1819
+#
+# TODO :
+# - si zenity n'est pas disponible, faire un menu en mode texte
+#   voir du côté de jq (bôf)
 # ------------------------------------------------------------------------
 
 aide()
 {
-	cat <<EOF
+	cat <<EOF >& 2
 Exécuter un, plusieurs ou tous les tests d'un fichier de test Selenium
-Appel : $(basename $0) [-f fichier] [-a] [-c] [-n] [-z répertoire] [-h] [test ..]
+Appel : $(basename $0) -f fichier [-a] [-c] [-n] [-v] [-z répertoire] [-h] [-t timeout] [test ..]
 
--f fichier    : fichier de test (défaut : membres.side)
+-f fichier    : fichier de test
 -a            : exécuter tous les tests du fichier
 -c            : afficher la fenêtre de chrome
 -n            : ne pas tuer le processus en fin de test
 -v            : afficher la ligne de commande
--z répertoire : sauver une copie d'écran dans le répertoire indiqué
+-z répertoire : sauver une copie d'écran dans le répertoire en cas d'échec
+-t timeout    : définir une attente max (défaut : 200000 ms)
 -h            : afficher cette aide
 test          : nom (partiel ou complet) d'un test ou d'une suite à exécuter
+                si absent, affiche un sélecteur pour choisir une des suites du fichier
 EOF
 }
 
@@ -63,24 +69,23 @@ traiter_test()
 # les constantes
 CHROME_OPTIONS=disable-search-engine-choice-screen,disable-infobars
 JEST_OPTIONS='"\"--detectOpenHandles\""'
-TIMEOUT=1000000
+TIMEOUT=200000
 
 # les options
 IMGDIR=""
 KILL=1
-TESTFILE=membres_v3.side
-declare -A options
-options=(
+declare -A options=(
 	[--jest-timeout]=${TIMEOUT}
 	[--jest-options]=${JEST_OPTIONS}
 )
 
-ARGS=""
 # Traiter les arguments
+ARGS=""
 while [[ $# -gt 0 ]]
 do
 	case "$1" in
 		-f )
+			# nom du fichier de test
 			shift
 			TESTFILE="$1"
 			if
@@ -105,6 +110,12 @@ do
 			KILL=0
 			shift
 			;;
+		-t )
+			# timeout
+			shift
+			TIMEOUT="$1"
+			shift
+			;;
 		-v )
 			# afficher la ligne de commande
 			AFFCOMM=1
@@ -121,6 +132,7 @@ do
 			exit
 			;;
 		-* )
+			# autres arguments de selenium-side-runner (+-)
 			ARGS+=" $1"
 			shift
 			;;
@@ -131,6 +143,14 @@ do
 	esac
 done
 
+# vérifier si on a un nom de fichier
+if [[ -z "$TESTFILE" ]]
+then
+	printf "\n*** Erreur : il manque le nom du fichier de test ***\n\n" >& 2
+	aide
+	exit
+fi
+
 if [[ -z "$CHROME" ]]
 then
 	CHROME_OPTIONS="${CHROME_OPTIONS},headless"
@@ -142,6 +162,8 @@ then
 	options[-z]+=${IMGDIR}
 fi
 
+options[--timeout]=${TIMEOUT}
+
 # la commande
 COMMANDE="selenium-side-runner $ARGS"
 for elem in ${!options[@]}
@@ -158,8 +180,9 @@ fi
 
 # copier les fichiers à envoyer dans /tmp
 rm -f Membres*.csv *membres.csv
-cp -p *.csv /tmp
-cp -p cv*.pdf /tmp
+cp -p fichiers/* /tmp
+
+# exécuter les tests
 
 if [[ "$TESTS" == "tous" ]]
 then