Stratégie QA & Tests Showcase
Cette section détaille la stratégie de tests, les workflows et les technologies utilisés dans le dépôt Firstbreath Showcase.
🛠 Stack Technologique
- Framework : Next.js 16 (React)
- Langage : TypeScript
- Styling : Tailwind CSS, Shadcn UI
- Base de données : Prisma (avec adaptateur MariaDB)
- CMS/Contenu : MDX
- Tests :
- Linting : ESLint
🧪 Stratégie de Tests
Tests Unitaires & Intégration
- Vitest : configuré dans
vitest.config.ts. - Exécution locale :
pnpm test - Couverture :
pnpm run test:coverage
Développement de Composants
- Storybook : Utilisé pour construire les composants UI de manière isolée (fichiers
.stories.tsx). - Exécution locale :
pnpm storybook
🔄 Workflows CI/CD
1. Pipeline CI (ci.yml)
Déclenché sur push et pull_request vers main et dev.
Étapes :
-
Quality Gates :
- TypeScript : Vérifie les erreurs de type (
tsc --noEmit). - Linting : Exécute
next lint. - Vérification du formatage :
pnpm run format --check. - Sécurité : Exécute
pnpm audit.
- TypeScript : Vérifie les erreurs de type (
-
Validation du Build :
- Prisma : Génère le client et valide le schéma.
- Build Next.js : Compile l'application (
next build).
-
Build Storybook : Compile Storybook et téléverse l'artefact.
-
Tests Unitaires & Accessibilité :
- Vitest : Exécute les tests unitaires.
- Storybook A11y : Exécute les tests d'accessibilité sur le Storybook compilé.
2. Analyse SonarQube (sonar.yml)
- Exécute les tests avec accumulation de couverture.
- Scanne le code pour les problèmes de qualité et les vulnérabilités.
♿ Accessibilité
- Storybook A11y : Addon configuré (
@storybook/addon-a11y) pour vérifier les problèmes d'accessibilité des composants. - Intégration CI : Les tests A11y s'exécutent automatiquement dans le pipeline CI sur le Storybook compilé.