Node.js - 4.7 Repérer une erreur logique avec le débogueur
Une erreur logique ne provoque aucun message d'erreur. Le programme s'exécute, mais ne se comporte pas comme prévu. Cette leçon montre un exemple : un mauvais indice qui enregistre le mauvais élément. Elle présente ensuite le débogueur de Visual Studio Code pour trouver la cause.
Un exemple d'erreur logique
Dans le fichier de routage, le message est lu à partir d'un indice. Le mauvais élément est pourtant sélectionné, et le fichier texte contient une valeur inattendue, sans qu'aucune erreur n'apparaisse.
L'indice 0 a été utilisé à la place de l'indice 1. Cette faute est facile à commettre, et difficile à repérer à la lecture.
Lancer le débogueur
Dans Visual Studio Code, on lance le débogage depuis le menu Run, en choisissant Start Debugging, puis en sélectionnant l'environnement Node.js. Une barre d'outils apparaît alors pour contrôler l'exécution.
Poser un point d'arrêt et observer
Un point d'arrêt s'ajoute en cliquant à gauche du numéro de ligne, jusqu'à l'apparition d'un point rouge. Lorsque le formulaire est envoyé, l'exécution s'arrête sur cette ligne, avant qu'elle ne soit exécutée.
Le panneau des variables montre les valeurs disponibles à cet instant. La pile d'appel montre le chemin suivi par le programme, et les observateurs permettent de suivre une variable précise.
- Cliquer à gauche du numéro de ligne pour poser un point d'arrêt.
- Consulter les variables dans le panneau de débogage.
- Avancer pas à pas avec le bouton qui passe à la ligne suivante.
En résumé
Une erreur logique ne produit pas de message, mais un résultat incorrect. Le débogueur de Visual Studio Code permet d'arrêter l'exécution sur une ligne. Les variables, la pile d'appel et le pas à pas aident à trouver la cause.
Points clés
- Une erreur logique ne produit pas de message d'erreur.
- Un mauvais indice peut enregistrer le mauvais élément.
- Un point d'arrêt interrompt l'exécution avant une ligne donnée.
- Le panneau des variables montre les valeurs à l'instant de l'arrêt.
- Le pas à pas permet de suivre le code ligne par ligne.
Questions fréquentes
Pourquoi une erreur logique est-elle difficile à trouver ?
Le programme ne signale aucune erreur. Seul le résultat est faux, ce qui oblige à examiner le code de près.
Comment arrêter l'exécution à un endroit précis ?
En posant un point d'arrêt sur la ligne voulue. L'exécution s'arrête avant que cette ligne ne soit exécutée.
À quoi sert le panneau des variables ?
Il montre les valeurs des variables disponibles au moment où l'exécution est arrêtée.