--- applyTo: "**" --- # Lancer les tests – N3WT-SCHOOL ## Tests backend (Django) Les tests backend tournent dans le conteneur Docker. Toujours utiliser `--settings=N3wtSchool.test_settings`. ```powershell # Tous les tests docker exec -it n3wt-school-backend-1 python3 manage.py test --settings=N3wtSchool.test_settings --verbosity=2 # Un module spécifique docker exec -it n3wt-school-backend-1 python3 manage.py test --settings=N3wtSchool.test_settings Auth.tests --verbosity=2 ``` ### Points importants - Le fichier `Back-End/N3wtSchool/test_settings.py` configure l'environnement de test : - Base PostgreSQL dédiée `school_test` (SQLite incompatible avec `ArrayField`) - Cache en mémoire locale (pas de Redis) - Channels en mémoire (`InMemoryChannelLayer`) - Throttling désactivé - Hashage MD5 (plus rapide) - Email en mode `locmem` - Si le conteneur n'est pas démarré : `docker compose up -d` depuis la racine du projet - Les logs `WARNING` dans la sortie des tests sont normaux (endpoints qui retournent 400/401 intentionnellement) ## Tests frontend (Jest) ```powershell # Depuis le dossier Front-End cd Front-End npm test -- --watchAll=false # Avec couverture npm test -- --watchAll=false --coverage ``` ### Points importants - Les tests sont dans `Front-End/src/test/` - Les warnings `ReactDOMTestUtils.act is deprecated` sont non bloquants (dépendance `@testing-library/react`) - Config Jest : `Front-End/jest.config.js` ## Résultats attendus | Périmètre | Nb tests | Statut | | -------------- | -------- | ------ | | Backend Django | 121 | ✅ OK | | Frontend Jest | 24 | ✅ OK |