Mathieu Desnouveaux

Comment déboguer Xdebug ou n'importe quel autre bug bizarre en PHP ?

Méthodologie complète de debugging pour Xdebug et autres bugs PHP : processus en 6 étapes depuis la reproduction jusqu'à la contribution, présenté par Kevin Dunglas

Sketchnote sur la méthodologie de debugging par Kevin Dunglas. Présentation des 2 cas de debugging (bug dans la lib vs bug dans le code), et processus en 6 étapes : reproduire le bug, collecter la data via debugger, partir des sources (PHPUnit, Franken PHP, Xdebug), analyser le bug avec traces et théories, valider les théories, puis contribuer en committant le fix.

Cette sketchnote résume la présentation Comment Déboguer Xdebug Ou N'importe Quel Autre Bug Bizarre En PHP par Kevin Dunglas lors du Forum PHP 2024, proposant une méthodologie systématique pour déboguer efficacement les problèmes complexes en PHP.

Contenu

Kevin Dunglas commence par identifier 2 cas principaux de debugging : les bugs dans les librairies externes versus les bugs dans notre propre code. Il présente ensuite un processus méthodique en 6 étapes pour résoudre n'importe quel bug bizarre.

Le processus démarre par 1. Reproduire le bug de manière minimale, suivi de 2. Collecter de la data via le debugger (pas facile quand c'est le debugger qui plante). L'étape 3. Partir des sources implique d'analyser le code source des outils utilisés (PHPUnit, Franken PHP, Xdebug). Puis vient 4. Analyser le bug en utilisant la trace et en élaborant des théories sur les causes possibles.

L'étape 5. Valider les théories permet de confirmer ou infirmer les hypothèses formulées. Enfin, 6. Contribuer consiste à committer le fix une fois la solution trouvée et validée.

Kevin souligne l'importance de ne pas paniquer face à un bug bizarre et de suivre cette approche structurée qui a fait ses preuves, même sur les problèmes les plus complexes.

Points clés à retenir

  • 2 cas de debugging : Bug dans la librairie externe vs bug dans notre code, approche différente selon le contexte
  • Processus 6 étapes : Reproduire → Collecter data → Partir des sources → Analyser → Valider théories → Contribuer
  • Sources essentielles : Maîtriser le code source de PHPUnit, Franken PHP, Xdebug pour debugging avancé
  • Méthodologie structurée : Approche systématique anti-panique pour résoudre les bugs les plus bizarres
Thèmes:
🐘 PHP 🛠️ Tools
Événement:
🎤 Forum PHP

Source: Kevin Dunglas
Publié le 10 octobre 2024