4D v16.3Débogueur |
||
|
4D v16.3
Débogueur
Débogueur
Le mot Débogueur provient du terme anglais bug (insecte ou punaise) qui se "traduit" en français par bogue . Une bogue dans une méthode est une erreur que vous désirez éliminer. Lorsqu’une erreur se produit dans votre code, ou lorsque vous désirez contrôler l’exécution de vos méthodes, vous utilisez le débogueur. Un débogueur vous permet de trouver les bogues en exécutant pas à pas vos méthodes et en fournissant toutes les informations nécessaires. Ce procédé s’appelle le mode Trace. Pour appeler la fenêtre du débogueur et afficher puis tracer les méthodes, vous pouvez :
Note : Lorsque vous tracez un process en cours d’exécution, la fenêtre du débogueur s’affiche instantanément. Si vous tracez un process qui n’est pas en cours d'exécution (process endormi, en attente d’événement, etc...), le débogueur “enregistre” la requête et n’apparaîtra qu’au moment où le process aura repris l’exécution du code. Note : Si votre base de données est dotée d’un système de mots de passe, seuls le Super_Utilisateur et les utilisateurs possédant les privilèges d’accès au développement peuvent tracer des méthodes. Voici la fenêtre du débogueur : Vous pouvez déplacer la fenêtre du débogueur et/ou redimensionner toutes les zones internes de la fenêtre comme vous le souhaitez. L’affichage ultérieur d’une nouvelle fenêtre du débogueur reprend la configuration (taille et position de la fenêtre, emplacement des lignes de division et contenu de la zone d’évaluation des expressions) de la dernière fenêtre affichée dans la même session. 4D est un environnement multitâche. Dans le cas de plusieurs process s’exécutant simultanément, vous pouvez tracer chacun d’entre eux de manière indépendante. Chaque process peut avoir sa propre fenêtre de débogueur. La barre d’outils de contrôle d’exécution, située en haut de la fenêtre du débogueur, comporte neuf boutons. Voici leur description ainsi que leurs raccourcis clavier associés : Arrêt du mode Trace et reprise du cours normal de l’exécution de la méthode. Note : La combinaison Maj+F5 ou Maj+clic sur le bouton Reprendre exécution provoque la reprise de l’exécution avec désactivation de tous les appels à TRACE suivants dans le process courant. La méthode s’arrête et vous retournez là où vous étiez avant son exécution. Si vous étiez en train de tracer une méthode formulaire ou une méthode objet s’exécutant en réponse à un événement, elle s’arrête et vous retournez au formulaire. Si vous traciez une méthode s’exécutant à partir du mode Application, vous retournez à ce mode. La méthode s’arrête comme lorsque vous cliquez sur Stopper exécution. De plus, 4D affiche dans la fenêtre de l’éditeur de méthodes la méthode qui s’exécutait au moment où vous avez cliqué sur le bouton. Conseil : Utilisez ce bouton lorsque vous connaissez les modifications à apporter à votre code, et le moment où elles doivent être effectuées pour pouvoir poursuivre le test de vos méthodes. Une fois vos modifications effectuées, ré-exécutez la méthode. Ce bouton se comporte comme le bouton Stopper et éditer, à la différence près qu'il n’annule pas l’exécution en cours. L’exécution de la méthode est simplement suspendue à l'instant du clic sur le bouton. 4D affiche dans la fenêtre de l’éditeur de méthodes la méthode qui s’exécutait au moment où vous avez cliqué sur le bouton Editer méthode. Important : Vous pouvez modifier cette méthode, mais ces modifications n’apparaîtront pas, ou ne s’exécuteront pas dans l’instance de la méthode tracée dans la fenêtre du débogueur. Ce n'est qu'une fois que la méthode aura été stoppée ou entièrement exécutée que les modifications pourront apparaître. En d’autres termes, il faut recharger la méthode pour que les modifications soient prises en compte. Conseil : Utilisez ce bouton lorsque vous connaissez les modifications à apporter à votre code et lorsqu’elles n’interfèrent pas avec le reste du code qui doit être exécuté ou tracé. Astuce : Les méthodes objet sont rechargées pour chaque événement. Si vous tracez une méthode objet (par exemple en réponse à un clic sur un bouton) vous n’avez pas besoin de quitter le formulaire. Vous pouvez modifier la méthode objet, sauvegarder les modifications, puis retourner au formulaire et tester à nouveau. Pour tracer/modifier les méthodes formulaire, il faut sortir du formulaire puis le réouvrir pour recharger la méthode correspondante. L'astuce est donc la suivante : lorsque vous effectuez le débogage complet d’un formulaire, placez le code que vous déboguez dans une méthode projet que vous utiliserez comme sous-routine à l’intérieur de la méthode formulaire. De cette manière, vous pouvez rester dans le formulaire, tracer, modifier et tester à nouveau votre formulaire car la sous-routine sera rechargée chaque fois qu’elle sera appelée par la méthode formulaire. Ce bouton permet de sauvegarder la configuration courante de la fenêtre du débogueur (taille et position de la fenêtre, emplacement des lignes de division et contenu de la zone d’évaluation des expressions). Elle sera alors utilisée par défaut à chaque ouverture de la base. La ligne courante de la méthode (indiquée par la flèche jaune — cette flèche s’appelle le compteur de programme) est exécutée et le débogueur passe à la ligne suivante. Le bouton Exécuter pas à pas ne passe pas dans les sous-routines et les fonctions. Il reste au niveau de la méthode que vous êtes en train de tracer. Si vous voulez également tracer les appels aux sous-routines et aux fonctions, utilisez le bouton Pas à pas détaillé. Lors de l’exécution d’une ligne qui appelle une autre méthode (sous-routine ou fonction), ce bouton provoque l’affichage de la méthode appelée dans la fenêtre du débogueur, et permet au développeur de passer pas à pas dans cette méthode. La nouvelle méthode devient la méthode courante (en haut) dans la sous-fenêtre Fenêtre de chaîne d'appel de la fenêtre du débogueur. Lors de l’exécution d’une ligne qui n’appelle pas une autre méthode, ce bouton se comporte comme le bouton Exécuter pas à pas. Lors de l’exécution d’une ligne qui crée un nouveau process (par exemple qui appelle la commande Nouveau process) ce bouton ouvre une nouvelle fenêtre du débogueur qui vous permet de tracer la méthode de gestion du process que vous venez de créer. Lors de l’exécution d’une ligne qui ne crée pas de nouveau process, ce bouton se comporte comme le bouton Exécuter pas à pas. Si vous tracez des sous-routines et des fonctions, cliquer sur ce bouton vous permet d'exécuter l’intégralité de la méthode qui est en train d'être tracée, et de revenir à la méthode appelante. La fenêtre du débogueur retourne à la méthode précédente dans la chaîne d’appel. Si la méthode courante est la dernière méthode de la chaîne d’appel, la fenêtre du débogueur se referme. A la droite de la barre d’outils de contrôle d’exécution, le débogueur affiche les informations suivantes :
Par exemple, dans la fenêtre affichée en tête de ce chapitre, vous pouvez voir les informations suivantes :
Voici les causes qui provoquent l'apparition du débogueur et d'un message (en rouge) :
La fenêtre du débogueur contient la barre de contrôle d’exécution décrite précédemment, ainsi que quatre sous-fenêtres redimensionnables :
Les trois premières fenêtres affichent des listes hiérarchiques montrant l’information pertinente au débogage. La quatrième, la Fenêtre d'évaluation des méthodes, affiche le code source de la méthode tracée. Chaque fenêtre a un rôle précis pour vous assister dans le processus de débogage. Avec la souris, vous pouvez redimensionner la fenêtre du débogueur, ainsi que chaque sous-fenêtre. En outre, les trois premières sous-fenêtres sont séparées par une ligne pointillée dans le sens de la hauteur : vous pouvez redimensionner à votre convenance les colonnes à l’intérieur de chaque sous-fenêtre.
Voir aussi
APPELER SUR ERREUR
|
PROPRIÉTÉS
Produit : 4D
HISTORIQUE
UTILISATION DE L'ARTICLE
4D - Langage ( 4D v16) |