Arrête de subir tes tests.
Fais-en des alliés.
Des tests qui accélèrent ton développement au lieu de le freiner.
En 2 jours, maîtrise PHPUnit et fais-en un appui fiable : pour
stabiliser ton code, le refactorer sans crainte, et cadrer ce que
tu génères avec l'IA.
Cette formation, c'est tout ce que j'aurais aimé qu'on m'apprenne quand j'ai commencé à tester, il y a 15 ans.
On en discute ?Tes tests, soit ils te ralentissent, soit ils n'existent pas.
Dans les deux cas, tu n'es pas seul.
Si tu as des tests, tu connais peut-être ça :
- Ils cassent à chaque refactoring, même quand tu ne touches pas au comportement
- Ils prennent tellement de temps que tu évites de les lancer
- Tu perds plus de temps à lire tes tests existants qu'à débugger ton application
- Certains tests cassent au hasard, sans raison apparente
- Les tests générés par l'IA passent au vert, mais laissent filer des régressions
- Tu te demandes si tout ce temps à tester en vaut la peine
Et si tu ne testes pas, c'est peut-être parce que :
- "On n'a pas le temps". La pression pour livrer est trop forte, les tests c'est du luxe
- "Le projet est trop legacy". Tout est couplé, rien n'est testable
- "On a déjà testé à la main". Pourquoi automatiser ce qui marche ?
- "Je ne sais pas quoi et quand tester". Lorsque tu y penses, tout est déjà codé et fonctionnel
- "Les tests ralentissent le développement". Alors qu'ils peuvent faire gagner du temps dès le départ
La plupart des développeurs vivent ça.
Mais le problème n'est pas "les tests".
C'est qu'on ne t'a jamais montré comment en écrire qui te font gagner du temps au lieu de t'en coûter.
On ne va pas juste apprendre PHPUnit
La doc officielle le fait très bien !
Ce qui manque, c'est le "pourquoi" et le "comment bien faire" : par où commencer, comment écrire des tests qui durent.
J'ai passé 15 ans à écrire des tests, et une bonne partie de ce temps à corriger ceux que j'avais mal écrits. Toutes les erreurs que j'ai faites n'étaient ni présentes dans les livres ni dans l'aide que je pouvais avoir. J'ai appris par la pratique...
Cette formation comble ce manque.
- Tu vas comprendre POURQUOI tes tests sont fragiles.
- Tu vas savoir nommer précisément ce que tu testes.
- Tu vas apprendre comment en faire des outils qui te font gagner du temps.
- Tu vas repartir avec une stratégie adaptée à ton contexte.
Ce que j'aime dans cette formation : voir des devs arriver en pensant que les tests sont un coût, et repartir en comprenant que c'est un gain dès la première ligne écrite.
Ce avec quoi tu repars
Une suite qui tourne en secondes
Fini d'attendre 10 minutes pour savoir si ton code marche
Plus de tests qui cassent pour rien
Faux positifs en moins, vrais problèmes détectés quand ils arrivent
Une doc vivante de ton code métier
Tes tests racontent ce que ton appli fait, mieux qu'un README
Refactorer sans serrer les fesses
Tu touches au legacy sans crainte de tout casser
Une stratégie qui colle à ton projet
Pas de recette dogmatique. Tu choisis quoi tester et comment.
Un garde-fou sur le code généré par IA
Je partage mes skills et workflows et t'évite de faire des erreurs.
Cette formation est pour toi si...
Tu testes déjà :
- Tu écris des tests PHP mais tu ne sais pas vraiment pourquoi ils cassent tout le temps
- Tu veux améliorer ta couverture sans ralentir ta vélocité
- Tu travailles sur du code legacy et tu veux le refactorer en sécurité
- Tu es tech lead et tu veux diffuser les bonnes pratiques dans ton équipe
- Tu codes avec un agent IA et tu veux que tes tests le guident vers ce qui compte, pas qu'ils servent de décoration
Tu ne testes pas (encore) :
- Tu bosses sur un projet sans tests et tu ne sais pas par où commencer
- Tu as la pression de livrer vite, et les tests te semblent être un luxe
- Tu es convaincu que ton legacy est "intestable" à cause du couplage
- Tu testes manuellement et tu ne vois pas l'intérêt d'automatiser
- Tu veux comprendre comment écrire des tests qui servent réellement
Pas besoin d'être expert.
Que tu écrives ton premier test ou ton millième,
tu repartiras avec des techniques que tu pourras appliquer dès ta prochaine PR.
Programme détaillé : 2 jours, du code à chaque page
Jour 1 : Maîtriser PHPUnit et l'isolation des tests
MATIN — Pourquoi tester et bases de PHPUnit
- • Les vraies raisons de tester
- • Typologies et niveaux de tests : qu'appelle-t-on un « test unitaire » ?
- • Bases de PHPUnit : installation, premiers tests, assertions
- • Fixtures et data providers
APRÈS-MIDI — Isoler les tests et repérer les pièges du code
- • Pourquoi isoler ses tests, et comment le faire
- • Les doublures : Dummy, Stub, Fake, Spy, Mock
- • Doublures manuelles, PHPUnit ou Prophecy : quand utiliser quoi
- • Repérer les erreurs de design et d'architecture qui rendent le code intestable
Jour 2 : Stratégies de test et code testable
MATIN — Stratégie de test et anti-patterns
- • Quand et comment lancer ses tests : CLI, CI/CD, hooks, agents IA
- • ROI : quel test mérite d'être écrit
- • TDD et BDD : approches et différences
- • Mauvaises pratiques courantes à reconnaître et éviter
- • Les tests qui freinent au lieu d'aider
APRÈS-MIDI — Bonnes pratiques et code testable
- • Bonnes pratiques d'écriture : tout ce qui fait qu'un test sert et tient dans le temps
- • SOLID et découplage : un code bien conçu se teste mieux
- • Cadrer l'IA et la rendre autonome sur tes tests : skills et workflows
- • Apprendre à tester et migrer progressivement un legacy
- • Coverage et mutation testing : mesurer la qualité de tes tests
Ce qu'ils en disent
Benjamin RenardMai 2026★★★★★"J'ai apprécié voir des cas de tests sur des projets concrets."
Bouchnak SamyMai 2026★★★★★"Le formateur est à l'écoute et sait s'adapter à mes besoins."
Enzo B.Mai 2026★★★★★"Contenu et explications claires, avec un formateur à l'écoute !"
Igor G.Décembre 2025★★★★★"Bonne pédagogie de Fabien. Beaucoup d’informations importantes distillées au cours de la formation pour agrémenter le support de cours et qui permettent de réfléchir sur l’importance des tests pour clarifier le code et permettre d’améliorer la compréhension du code pour des personnes arrivant sur un projet."
Jessica AFévrier 2017★★★★★"Fabien SALLES connait très bien son sujet et est très à l'écoute."
Paul Jean P.Février 2017★★★★★"Flexible sur le contenu"
Et le TDD dans tout ça ?
Pourquoi cette formation ne s'appelle pas "TDD avec PHPUnit" ? Parce qu'avant de faire du TDD, il faut savoir tester correctement : écrire des tests fiables, isolés, maintenables. Le focus est d'abord là, sur les bonnes et les mauvaises pratiques de test.
Cette formation te donne ces fondations.
Cela dit, on fait bien du TDD. Plusieurs exercices te font pratiquer l'approche, et j'explore les différentes écoles et styles (Inside-Out, Outside-In, Diamond, Canon TDD, TCR) pour rester pragmatique plutôt que dogmatique.
À la fin des 2 jours, tu comprendras pourquoi le TDD compte, pourquoi il faut en faire, et comment appliquer ses principes pour développer de manière itérative et maximiser la boucle de feedback, y compris quand le code et les tests sont générés par l'IA.
Et l'IA dans tout ça ?
L'IA accélère tes livraisons. Mais sans tests fiables et pérennes, elle accélère aussi les pièges : régressions silencieuses qui passent au vert, tests fragiles qui sautent au premier vent, tests qui valident à côté de la plaque.
Un test fiable, c'est un signal sur lequel ton agent peut s'appuyer pour itérer. Un test fragile lui ment au même titre qu'à toi, et tu te retrouves à corriger des bugs qu'il croyait avoir réglés.
La formation n'utilise pas l'IA pendant les exercices, mais on en parle. Je couvre les techniques que j'utilise pour fiabiliser, vérifier et contraindre l'IA dans la bonne direction. Si tu veux pousser le focus IA plus loin, je peux adapter le contenu.
Cette formation ne te donne pas des "bases". Elle te transmet mes 15 années d'écriture de tests, pour ne pas reproduire les mêmes erreurs. Avec ou sans IA.
Mes skills IA, en bonus de fin de formation
Je ne m'en sers pas pendant la formation. Je te les présente à la fin, en bonus, une fois que tu as bien intégré les bonnes pratiques de test.
L'idée : te permettre de reproduire avec un agent IA tout ce qu'on a vu en deux jours, sans perdre la rigueur. Ces skills, que j'approfondis depuis un an, condensent tout ce que j'ai appris sur le sujet. Ils s'appliquent à n'importe quel agent (Claude Code, Copilot, Codex, Cursor, etc.) et tu pourras les adapter à ta stack.
Utiliser les skills des autres, c'est bien. Comprendre comment ils marchent et les adapter à ton projet, c'est mieux.
Qui donne cette formation ?
Je m'appelle Fabien. Je teste depuis le début de ma carrière, et j'ai fait à peu près toutes les erreurs possibles.
Cette formation, je la donne depuis 2017. Ce qui me tient, c'est le moment où quelqu'un comprend pourquoi ses tests cassaient, pas juste comment les corriger.
Former, c'est aussi apprendre. Chaque session me pousse à clarifier ce que je croyais acquis.
Mon objectif : que tu repartes avec des techniques immédiatement applicables sur ton projet du lundi.
Comment se déroule la formation ?
Intra-entreprise
Je me déplace dans tes locaux. Toute l'équipe entend la même chose et repart avec le même vocabulaire.
À distance
Mêmes exercices, en visio. Pour les équipes éclatées géographiquement.
Sur mesure
Ta stack, ton legacy, tes vrais cas. On peut bosser sur ton code si tu veux.
N'hésite pas à me contacter pour un devis personnalisé.
Questions fréquentes
Quels sont les prérequis pour cette formation ?
Quelle est la différence avec un cours PHPUnit en ligne ?
Est-ce que la formation couvre le code legacy ?
Est-ce qu'on aborde le TDD et le TCR ?
Et avec l'IA, qu'est-ce qu'on aborde ?
La formation peut-elle être adaptée à notre contexte ?
Envie d'en discuter ?
Pas de formulaire automatique. On échange d'abord pour voir si la formation correspond à tes besoins.