03-comment-je-travaille/guides/tests.md

Stratégie de tests

Ce guide décrit comment Codexia teste son code. L'approche est volontairement pragmatique : peu de tests, mais des tests qui disent la vérité sur le comportement réel.

Principe directeur — intégration > unitaire mocké

Quand l'intégration est faisable (base de test, conteneur, fixture), elle bat le mock. Leçon retenue : des tests mockés verts ont déjà masqué une migration cassée en prod. Le mock ment sur le contrat réel.

Mocks acceptables : uniquement les dépendances coûteuses — modèle ML chargé, API tierce payante, e-mail sortant. Tout le reste passe par une vraie instance.

Règle de fond : pilotage/telaria-style.md §2.

Ce qui est testé

  • Pipeline de veille : suite PHPUnit (collecte, classification, standby, idempotence du traitement).
  • Câblage du serveur MCP : ContainerWiringTest (le conteneur se monte, les outils sont bien enregistrĂ©s).
  • Microservice d'embeddings (Python) : validation du contrat aux frontières (Pydantic strict) et tests d'API.

Outillage de qualité (avant chaque push)

Discipline pre-push (idéalement via hook) :

  • PHP : PHPStan au niveau max raisonnable, composer audit = 0 advisory, tests verts.
  • Doctrine : doctrine:schema:validate au vert — un drift code/DB provoque des bugs silencieux en prod.
  • Python : ruff check, mypy --strict sur les modules de contrat, tests verts.
  • Tous : git diff --check (ni espaces de fin, ni marqueur de conflit).

Voir pilotage/telaria-style.md §6 et §11, et git-hooks.md.

Voir aussi

Assistant documentaire

Posez une question sur la documentation. Les réponses citent leurs sources — un clic ouvre le document à gauche.

Loading…
Loading the web debug toolbar…
Attempt #