Débogueur XPath
Le débogueur XPath de la fenêtre XPath/XQuery vous permet de déboguer des expressions Xpath dans le contexte des fichiers chargés. Vous pouvez ouvrir la fenêtre XPath/XQuery par le biais des points d'entrée suivants :
•Dans le design, elle s’ouvre à chaque fois qu'une expression XPath est saisie ou éditée : par exemple, lorsque vous saisissez des expressions pour définir les valeurs des styles et propriétés.
•À partir du simulateur elle s’ouvre en cliquant sur la touche Évaluer XPath dans le volet de Sources de pages.
•Lorsque le simulateur s’arrête à une action, vous pouvez lancer le Débogueur XPath en cliquant sur la touche Pas à pas dans XPath du Débogueur d’Actions.
Note : | Dans les deux premierts contextes listés ci-dessus, vous pouvez saisir toute expression XPath que vous souhaitez et la déboguer par rapport à tout fichier XML que vous devez charger dans le Débogueur. Dans le troisième contexte, en revanche, vous déboguerez l’expression XPath spécifique à l’action actuelle, et vous déboguerez cette expression par rapport aux sources de page de l’action ; par conséquent, l’option de charger un fichier XML est désactivée. |
Les descriptions et les captures d’écran dans cette section se réfèrent au Débogueur XPath lorsqu’ils sont accédés par le biais du volet de Sources de pages du Simulateur. Le Débogueur se comporte de la même manière quelque soit le contexte depuis lequel il est lancé. Veuillez noter, néanmoins, que l’option de charger un fichier XML est désactivée lorsque le Débogueur est lancé depuis le troisième contexte.
Lancer le Débogueur XPath
Pour lancer le Débogueur, choisir Lancer Débogage dans le menu déroulant Lancer Évaluation/Débogage (capture d'écran ci-dessous). Vous pouvez passer entre le Générateur (pour avoir de l’aide avec la construction de l’expression) et le Débogueur.
Avant ou après la saisie d’une expression XPath/XQuery, sélectionner un fichier XML sur lequel l’expression doit être exécutée (voir Exécuter le Débogueur ci-dessous). Lancer le débogage en cliquant sur Lancer Évaluation/Débogage (F5). Le débogueur exécutera l’expression dans le fichier XML chargé et exécute les résultats dans les volet dans la partie inférieure de la fenêtre.
Touches pour configurer le Débogueur XPath
|
Mise en page du Débogueur
Le Débogueur XPath a deux volets supplémentaires qui sont ajoutés au volet Résultats de l'Évaluateur (voir capture d'écran ci-dessous):
•Les Expressions Watch et Variables. Tous les deux, les variables et les expressions watch sont affichées dans le même vole
•le volet Pile d’appel et Points de débogage, dont chacun a un onglet séparé dans le côté droit du volet.
Le Débogueur XPath propose les fonctions suivantes :
•Vous permet de pénétrer dans le processus d’évaluation XPath, une étape à la fois pour voir comment l’expression XPath est évaluée. Utiliser la touche de la barre d’outils Entrer dans (F11). À chaque étape d’évaluation, la partie de l’expression actuellement évaluée est marquée en jaune (voir capture d'écran ci-dessus), alors que le résultat de l’évaluation de cette étape est affiché dans le volet Résultats. Par exemple, dans la capture d'écran ci-dessus, tous les éléments Order qui ont un élément descendant nommé CustomerCode contenant la valeur '456' ont été sélectionnés.
•Définir des points d’arrêt dans les endroits où vous souhaitez interrompre l’évaluation et contrôler les résultats. Utiliser la touche de la barre d’outils Lancer le débogage (F5) pour passer dans l’évaluation, en s’arrêtant uniquement aux points d’arrêt. Le fait d’utiliser des points d’arrêt est plus rapide que de s’arrêter à chaque étape du traitement avec Entrer dans (F11).
•Définir des points de trace pour consulter les résultats dans les étapes marquées en tant que point de trace. L’évaluation ne s’interrompra pas (elle ne s'interrompra qu'aux points d’arrêt), mais les résultats du point de trace seront affichés dans une liste dans le volet Résultats
•Les Expressions Watch sont des expressions XPath qui sont évaluées à chaque étape du débogage. Vous pouvez les utiliser pour contrôler l’information que vous souhaitez à chaque étape, comme des données de document ou des aspects de l’évaluation. Les expressions Watch sont particulièrement utiles lorsqu'elles sont utilisées ensemble avec des points d’arrêt.
•Les variables qui sont exposées dans l’étape actuelle, y compris leurs valeurs, sont affichées dans le volet Variables et Expressions Watch.
•Les appels du processeur d’une étape d’évaluation sont affichés dans l’onglet Pile d’appel du volet Pile d’appel et Points de débogage.
•Si des points d’arrêt et des points de trace ont été définis, alors ils seront affichés dans l’onglet Points de débogage du volet Pile d’appel et Points de débogage.
Pour plus d'information à propos de ces fonctions, voir leur description ci-dessous.
Lancer le débogueur
Les étapes générales pour déboguer une expressions XPath sont les suivantes :
1.Saisir l’expression XPath dans le volet d’expression.
2.Veuillez vous assurer que le fichier XML dans lequel vous souhaitez appliquer l’expression XPath est chargé . Si ce n’est pas le cas, utiliser la touche Charger (située sous le volet Arborescence de schéma ; voir capture d'écran ci-dessus) pour chercher le fichier et le charger.
3.Définir tous les points d’arrêt ou les point de trace que vous souhaitez. Un point d’arrêt est un point au niveau duquel l’évaluation est interrompue. Un point d’arrêt est un point dans l’évaluation au niveau duquel le résultat est enregistré ; les points de trace fournissent donc un chemin traçable des résultats d’évaluation.
4.Si vous cliquez sur Lancer débogueur, l’évaluation est interrompue au premier point d’arrêt. Cliquer sur Lancer débogueur plusieurs fois pour passer dans chaque point d’arrêt jusqu’à la fin de l’évaluation.
5.Utiliser la fonction Pas à pas détaillé/Pas à pas sortant/Pas à pas principal pour passer étape par étape (contrairement à la solution point d’arrêt-par-point d’arrêt) dans toute l’évaluation.
6.Vous pouvez aussi exécuter le débogueur jusqu’à un point dans l'expression XPath : i) Marquer le point en plaçant votre curseur sur cet emplacement à cet endroit et en (ii) cliquant sur l'icône de barre d'outils Exécuter jusqu'au curseur.
|
Pas à pas détaillé, sortant et détaillé des étapes d’évaluation
La fonction Pas à pas détaillé vous permet de passer étape par étape à travers l’évaluation. Chaque clic de cette commande vous fait passer dans l’étape suivante de l’évaluation ; l’étape actuelle est soulignée par le marquage dans l’expression (voir capture d'écran ci-dessous). La fonction Pas à pas sortant vous amène à une étape dans un niveau supérieur que l’étape actuelle, alors que la fonction Pas à pas principal passe par-dessus les étapes de niveau inférieur et vous amène à l’étape suivante dans le même niveau. Vous pouvez essayer la fonction Pas à pas en utilisant l’expression affichée dans la capture d'écran ci-dessous ($ORDERS/Orders/Order[CustomerCode="456"]/@number) et en cliquant sur les trois touches Pas à pas pour voir comment elles fonctionnent. (Le fichier XML dans cet exemple est une source de page du tutoriel Sous-page et visibilité. Ouvrir ce fichier et procéder comme suit : (i) Lancer le simulateur ; (ii) Dans la page supérieure qui apparaît dans le Simulateur, cliquer sur Afficher tout les Orders, (iii) Dans le volet Sources de page, cliquer sur l'icône de la barre d'outils Évaluer XPath), (iv) passer au Débogueur (voir ci-dessus).) .
La capture d'écran ci-dessous montre l’évaluation lorsque le traitement a été interrompu lorsque vous avez atteint l’étape de localisation Order[CustomerCode='456']. À cette étape, le résultat montre les deux d’élément Order qui ont chacun un élément enfant CustomerCode contenant la valeur '456'. Les deux éléments (avec leurs contenus de nœud entiers) sont affichés dans le volet Résultats.
Points d’arrêt
Des point d’arrêt sont des points dans lesquels vous souhaitez que le débogueur s’arrête après l'avoir lancé avec la touche Lancer débogueur. Ils sont utiles lorsque vous souhaitez analyser une partie spécifique de l’expression. Lorsque le débogueur s’arrête au point d’arrêt, vous pouvez contrôler le résultat et vous pouvez ensuite utiliser la fonction Pas à pas détaillé pour afficher les résultats des étapes suivantes de l’évaluation. Pour définir un point d’arrêt, placer le curseur dans l’expression à l’endroit où vous souhaitez trouver le point d’arrêt, et cliquer sur la touche de la barre d’outils Insérer/Supprimer point d’arrêt (F9). Le point d’arrêt sera marqué avec une surligne en pointillés rouge. Pour retirer un point d’arrêt, le sélectionner et cliquer sur Insérer/Supprimer point d’arrêt (F9).
Note : | Vous pouvez rendre un point d'arrêt conditionnel en saisissant la condition dans la liste du point d'arrêt dans le volet Points de débogage. Voir Points de débogage ci-dessous. |
Note : | Vous pouvez lancer le Débogueur XPath directement depuis une simulation pour déboguer les expressions XPath qui ont des points d’arrêt définis. Pour ce faire, lancer Débogueur MT dans le Mode Points d’arrêt. |
Points de trace
Des points de trace sont des points dans lesquels les résultats d’évaluation sont enregistrés. Ces résultats sont affichés dans l’arborescence Traces du volet Résultats (voir capture d'écran ci-dessous). Des points de trace vous permettent de voir les résultats d’évaluation des parties particulières de l’expression. Par exemple, dans la capture d’écran ci-dessous, les points de trace ont été définis sur le nœud OrderAmount. Les résultats dans ces points de trace sont affichés dans l’arborescence Traces.
Pour définir un point de trace, placer le curseur à l’endroit où vous souhaitez trouver le point de trace, et cliquer sur la touche de la barre d’outils Insérer/Supprimer point de trace (F9). Les points de trace seront marqués avec une surligne en pointillés bleu (voir capture d'écran ci-dessous). Pour supprimer un point de trace, le sélectionner et cliquer sur Insérer/Supprimer points de trace (F9).
Note : | si le point d'arrêt et le point de trace sont définis sur la même partie de l'expression, alors la surligne est composée de pointillés rouge et bleu. |
Voir aussi Points de débogage ci-dessous.
Expressions Watch, Variables et Pile d'appels
Les expressions Watch et Variables sont affichées dans le volet Expressions Watch et Variables (volet central inférieur dans la capture d'écran ci-dessous). Dans ce volet, vous pouvez filtrer le mode pour afficher/dissimuler (i) l'item de contexte actuel, (ii) les variables locales, (iii) les variables globales. Pour ce faire, activer/désactiver les icônes de barre d'outils respectives. L’item de contexte actuel est le nœud en cours d’évaluation
Expressions Watch
Les expressions Watch sont des expressions XPath que vous pouvez saisir, soit avant le début de l'évaluation ou pendant une interruption dans une évaluation. L’expression est évaluée dans le contexte du nœud actuel à chaque étape d’évaluation où le débogueur s’arrête. Les expressions espion peuvent être utilisées pour les objectifs suivants :
•Pour tester des conditions spécifiques. Par exemple, dans la capture d'écran ci-dessus, l'expression watch $i/CustomerCode="789" est utilisée pour tester si l’élément Order a un CustomerCode d’une valeur de "789". Le résultat false dans le cas du premier élément Order nous dit que cette commande n’a pas une valeur CustomerCode de "789". (La valeur est "456" comme vous pouvez le voir dans le volet Résultats.)
•Pour trouver des données dans le cadre d'un contexte particulier Par exemple, dans la capture d’écran ci-dessus, nous avons saisi l’expression espion $i/CustomerCode, $i/OrderDate pour consulter ces détails de l’ordre actuel.
•Pour générer des données supplémentaires. Par exemple, dans la capture d'écran ci-dessus, nous avons saisi l’expression espion count($ORDERS//Order) pour compter tous les éléments Order.
Pour saisir l'expression watch, cliquer sur Ajouter entrée Watch dans la barre d'outils du volet (encerclé en rouge dans la capture d'écran ci-dessus), puis double-cliquer la nouvelle entrée watch pour saisir l’expression XPath et cliquer sur Entrée lorsque vous avez terminé. Pour supprimer une expression watch, la choisir et cliquer sur Supprimer watch dans la barre d'outils. Si, au cours du débogage, l’expression ne peut pas être évaluée correctement pour une raison quelconque (par exemple si une de ses variables est hors de portée), l’expression watch passe au rouge.
Variables
Les variables qui ont été déclarées dans l'expression et qui sont incluses dans l'étape d'évaluation actuelle seront affichées avec leurs valeurs actuelles respectives. Elles seront affichées sous les expressions watch.
Dans la capture d'écran ci-dessus, par exemple, le traitement a été in interrompu au niveau du point d'arrêt sur la variable $i. La variable $i est présente dans cette étape d'évaluation. Donc $i est affiché avec sa valeur actuelle, qui, dans la capture d'écran ci-dessus est le premier élément Order. Puisque le nœud racine du document, $ORDERS, est aussi une variable, il est aussi affiché avec son contenu, qui est la racine du document.
Pile d’appel
L’onglet Pile d’appel du volet Pile d’appel et Points de débogage(volet en bas à droite dans la capture d'écran ci-dessus) affiche les appels du processeur jusqu’à ce point du débogage. L’appel de processeur actuel est marqué en jaune. Veuillez noter que seuls les appels qui mènent directement à l'étape d'évaluation actuelle sont affichés.
Points de débogage
L’onglet Points de débogage du volet Pile d’appel et Points de débogage(volet en bas à droite dans la capture d'écran ci-dessous) montre les points d’arrêt (avec des cercles rouges) et des points de trace (cercles bleus) que vous avez défini dans l’expression. Chaque point de débogage est recensé avec son numéro de ligne et de caractère. Par exemple, AxisStep@2:12 signifie qu’il y a un points de débogage sur la ligne 2, caractère 12 de l’expression dans le volet d’expression.
Pour s’arrêter à chaque point d’arrêt dans l’expression, cliquer sur Lancer Débogueur (F5).
Veuillez noter les fonctions suivantes :
•Vous pouvez faire en sorte que chaque point d’arrêt dépende de certains facteurs en saisissant une condition d’arrêt pour ce point. Pour ce faire, dans le volet Points de débogage, (i) double-cliquer sur l’entrée du point d’arrêt Saisir condition break, (ii) saisir l’expression pour la condition, et (iii) appuyer sur Entrée. Ce point d’arrêt sera uniquement activé si la condition évalue à true. Par exemple, dans la capture d'écran ci-dessus, la condition break $i/CustomerCode="456" activera le point d’arrêt sur $i (c’est à dire, l’élément Order actuel) lorsque l’élément enfant CustomerCode de l’élément Order a une valeur de "456". En effet, le traitement s’interrompra uniquement aux commandes qui ont un code client de 456. La capture d’écran montre l’évaluation interrompue à la sixième commande, qui est une telle commande. Le point d'arrêt n’est pas déclenché pour des commandes avec d’autres codes client. (Vous pouvez définir une expression espion, comme dans la capture d’écran ci-dessus, pour montrer quelles commandes ont un code client de 456: les commandes avec les nombres 001 et 006.)
•Vous pouvez activer/désactiver tous les points de débogage en cliaquen sur leur touche de barre d’outils respective : Activer tous les Points de débogage et Désactiver tous les Points de débogage (touches encerclées en vert dans la capture d'écran ci-dessus). Lorsqu’un point de débogage est désactivé, il est désactivé pour toutes les évaluations jusqu’à ce qu’il soit réactivé ultérieurement.
•Vous pouvez activer/désactiver les points d’arrêt individuels dans leurs menus contextuels respectifs.
•Les points de trace sont recensés avec leurs détails. Ils peuvent être activés/désactivés.
•Si vous cliquez sur Supprimer tous les points de débogage, tous les points d'arrêt et les points de trace du design seront supprimés.
•Si une erreur se produit pour laquelle aucune gestion n'a été définie, cela sera détecté. Il suffit de basculer la commande Arrêt à l'erreur non traitée dans la barre d'outils. Le débogueur s'arrêtera s'il rencontre de telles erreurs.
Commandes de barre d’outils dans les volets
Les volets de la fenêtre XPath/XQuery dans le Mode Débogage (voir capture d'écran ci-dessus) contiennent des touches qui proposent des fonctions de navigation, de recherche et de copie. Ces touches sont décrites dans la table ci-dessous de gauche à droite pour chaque volet. Les commandes correspondantes sont aussi disponibles dans le menu contextuel des items recensés.
Icône | Fonction |
Suivant, Précédent | Sélectionne, respectivement, l'item suivant et précédent dans la liste de résultats |
Copier la ligne de texte sélectionnée dans le presse-papiers | Copie la colonne de valeur de l'item de résultat sélectionné dans le presse-papiers. Afin de copier toutes les colonnes, activer la commande La copie contient toutes les colonnes (voir ci-dessous) |
Copier tous les messages dans le presse-papiers | Copie la colonne de valeur de tous les items de résultat dans le presse-papiers, y compris des valeurs vides. Chaque item est copié en tant que ligne séparée |
La copie contient toutes les colonnes | Passe entre la copie (i) de toutes les colonnes, ou (ii) uniquement la colonne de valeur. Le séparateur de colonne est un espace unique |
Chercher | Ouvre un dialogue Chercher pour chercher un string, y compris des caractères spéciaux, dans la liste de résultat |
Chercher précédent | Cherche l'occurrence précédente du terme qui a été saisi en dernier dans le dialogue Chercher |
Chercher suivant | Cherche l'occurrence suivante du terme qui a été saisi en dernier dans le dialogue Chercher |
Supprimer | Supprime la liste de résultats |
Fermer le Débogueur XPath
Pour fermer le Débogueur XPath,cliquer sur Arrêter l’évaluation/ébogage.