Sécurité et Qualité Logicielle
1. Tests unitaires
Les tests backend sont réalisés avec pytest (voir backend/test_import_movies.py).
Exemple de test :
# backend/test_import_movies.py
def test_import_movies():
... # test d'import et de validation des donnéesDes tests d’intégration sont prévus pour le frontend et le scraper.
2. Validation continue
Chaque modification du code déclenche un pipeline CI (lint, tests, build). Les erreurs sont bloquantes pour le merge.
3. Isolation des environnements
Docker garantit la cohérence des environnements entre dev, CI et prod.
Les dépendances sont figées dans les fichiers requirements.txt et package.json.
4. Sécurité des secrets
Aucun secret n’est stocké dans le dépôt : tout est géré via les secrets GitHub et les variables d’environnement. Les accès aux bases de données sont protégés par des mots de passe forts et non versionnés.
Exemple de configuration dans docker-compose.yml :
db:
image: postgres:15
environment:
POSTGRES_USER: letterbox
POSTGRES_PASSWORD: letterbox
POSTGRES_DB: letterbox