Stratégie QA & Tests
La qualité n'est pas un accident. Nous adhérons à une stratégie de test stricte pour prévenir les régressions dans ce projet EIP.
La Pyramide de Tests
-
Analyse Statique (Automatisé)
- Outils : SonarQube & ESLint.
- Quand : À chaque push de commit (CI).
- Vérifications : Code smell, Complexité Cognitive, Bugs, Hotspots de Sécurité.
-
Tests Unitaires (Backend)
- Outil : Japa (Testeur natif AdonisJS).
- Portée : Services et Helpers avec logique complexe.
- Commande :
node ace test
-
Tests de Bout-en-Bout (E2E)
- Portée : Flux Utilisateurs Critiques (Connexion -> Voir Caméra -> Recevoir Alerte).
- Méthode : Vérification manuelle en utilisant l'Environnement de Staging.
Standards de Code
Linting
Nous utilisons eslint et prettier pour renforcer le style.
- Règle : Pas de
anyen TypeScript. - Règle : Les composants doivent faire moins de 200 lignes.
Commits
Suivez les Conventional Commits pour un historique propre :
feat: add camera supportfix: resolve websocket connection dropdocs: update architecture diagram
Intégration Continue (CI)
Notre workflow GitHub Actions impose :
- Build Pass : Le code doit compiler.
- Lint Pass : Pas d'erreurs de formatage.
- Sonar Quality Gate :
- 0 Bugs Critiques.
- < 3% Duplication.
- Maintenabilité grade A.