Aller au contenu principal

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 :

  1. 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.
  2. Validation du Build :

    • Prisma : Génère le client et valide le schéma.
    • Build Next.js : Compile l'application (next build).
  3. Build Storybook : Compile Storybook et téléverse l'artefact.

  4. 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é.