Skip to content

Commit e1773ef

Browse files
committed
add: Fichier run_tests.py qui run tous les tests et donne le feedback
1 parent da5c573 commit e1773ef

1 file changed

Lines changed: 65 additions & 0 deletions

File tree

run_tests.py

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
#!/usr/bin/env python3
2+
"""
3+
Script pour exécuter tous les tests du projet
4+
"""
5+
6+
import sys
7+
import os
8+
import subprocess
9+
10+
def run_test_file(test_file):
11+
"""Exécute un fichier de test"""
12+
print(f"\nExécution de {test_file}")
13+
print("=" * 50)
14+
15+
try:
16+
# Ajouter le répertoire racine au path
17+
sys.path.insert(0, os.path.dirname(__file__))
18+
19+
# Exécuter le test
20+
result = subprocess.run([sys.executable, test_file],
21+
capture_output=True, text=True, cwd=os.path.dirname(__file__))
22+
23+
if result.returncode == 0:
24+
print("✅ Tests réussis")
25+
print(result.stdout)
26+
else:
27+
print("❌ Tests échoués")
28+
print(result.stdout)
29+
print(result.stderr)
30+
31+
return result.returncode == 0
32+
33+
except Exception as e:
34+
print(f"❌ Erreur lors de l'exécution: {e}")
35+
return False
36+
37+
def main():
38+
"""Exécute tous les tests disponibles"""
39+
print("Lancement des tests du projet CryptoForensic")
40+
print("=" * 60)
41+
42+
tests = [
43+
"tests/test_global.py",
44+
"tests/test_analyzers.py"
45+
]
46+
47+
success_count = 0
48+
total_count = len(tests)
49+
50+
for test_file in tests:
51+
if os.path.exists(test_file):
52+
if run_test_file(test_file):
53+
success_count += 1
54+
else:
55+
print(f"⚠️ Fichier de test non trouvé: {test_file}")
56+
57+
print(f"\nRésumé: {success_count}/{total_count} tests réussis")
58+
59+
if success_count == total_count:
60+
print("Résultat:Tous les tests passent !")
61+
else:
62+
print("Résultat: Certains tests ont échoué")
63+
64+
if __name__ == "__main__":
65+
main()

0 commit comments

Comments
 (0)