Benchmark — Référence de performance et détection de régression
Quand l'utiliser
- Avant et après une PR pour mesurer l'impact sur les performances
- Mettre en place des références de performance pour un projet
- Lorsque les utilisateurs signalent « c'est lent »
- Avant un lancement — assurez-vous d'atteindre les objectifs de performance
- Comparer votre pile technique avec des alternatives
Comment ça fonctionne
Mode 1 : Performances de page
Mesure les métriques réelles du navigateur via le MCP du navigateur :
1. Naviguer vers chaque URL cible
2. Mesurer les Core Web Vitals :
- LCP (Largest Contentful Paint) — cible < 2,5 s
- CLS (Cumulative Layout Shift) — cible < 0,1
- INP (Interaction to Next Paint) — cible < 200 ms
- FCP (First Contentful Paint) — cible < 1,8 s
- TTFB (Time to First Byte) — cible < 800 ms
3. Mesurer la taille des ressources :
- Poids total de la page (cible < 1 Mo)
- Taille du bundle JS (cible < 200 Ko compressé gzip)
- Taille du CSS
- Poids des images
- Poids des scripts tiers
4. Compter les requêtes réseau
5. Vérifier les ressources bloquant le rendu
Mode 2 : Performances d'API
Test de performance des endpoints d'API :
1. Frapper chaque endpoint 100 fois
2. Mesurer : latence p50, p95, p99
3. Suivre : taille de la réponse, codes de statut
4. Tester sous charge : 10 requêtes simultanées
5. Comparer avec les objectifs SLA
Mode 3 : Performances de build
Mesure la boucle de feedback de développement :
1. Temps de construction à froid
2. Temps de rechargement à chaud (HMR)
3. Durée de la suite de tests
4. Temps de vérification TypeScript
5. Temps de lint
6. Temps de construction Docker
Mode 4 : Comparaison avant/après
Exécutez avant et après une modification pour mesurer l'impact :
/benchmark baseline # enregistre les métriques actuelles
# ... apporter des modifications ...
/benchmark compare # compare avec la référence
Sortie :
| Métrique | Avant | Après | Delta | Verdict |
|----------|-------|-------|-------|---------|
| LCP | 1,2 s | 1,4 s | +200 ms | ATTENTION : AVERTISSEMENT |
| Bundle | 180 Ko | 175 Ko | -5 Ko | ✓ MEILLEUR |
| Build | 12 s | 14 s | +2 s | ATTENTION : AVERTISSEMENT |
Sortie
Stocke les références dans .ecc/benchmarks/ au format JSON. Suivi par Git afin que l'équipe partage les références.
Intégration
- CI : exécutez
/benchmark comparesur chaque PR - Associer avec
/canary-watchpour la surveillance post-déploiement - Associer avec
/browser-qapour une checklist complète avant mise en ligne