Exploiter et lancer

Contrats de test et CI

Utilisez les niveaux de test, l’infrastructure réelle, Playwright, la couverture croissante et les gates de build sans réduire les garanties.

Vérifié avec le commit 2a1a04a.

La suite est organisée par ce que chaque niveau peut simuler. Une base mockée ne prouve pas une contrainte unique ; une route qui mocke son guard ne prouve pas que l’authentification précède la lecture.

NiveauProuvePeut mocker
Unitrègles pures et architecturerien
APIHTTP, enveloppe, ordre d’authservices/modèles, pas les guards
Serviceorchestration, reprises, coût, compensationmodèles et SDK externes
Componentcomportement visiblefetch
Databasecontraintes, verrous, vrais timestampsrien
E2Enavigateur connecté et infrastructure localerien

Chaque route a un test d’auth qui vérifie qu’aucune fonction de données n’est appelée avant 401/403. Toute mutation de crédit ou d’argent a un test de rejeu avec un seul effet.

pnpm test:fast
pnpm test:run
pnpm test:cov
pnpm test:db
pnpm test:e2e

Le nom de la base doit contenir test, car le harness tronque les tables. La couverture protège services, modèles, API et données admin. Playwright teste connexion, crédits tenant, upload/suppression Garage et la tâche image à cinq crédits jusqu’au worker et au téléchargement signé.

La CI exécute lint, migrations PostgreSQL 16, Redis, couverture, builds et navigateur. Ne baissez pas un seuil et ne remplacez pas l’infrastructure réelle par des mocks pour obtenir du vert.

Contrats de test et CI · Sushi SaaS