> Tech > IntelliTrace : Le génie du débogage

IntelliTrace : Le génie du débogage

Tech - Par Renaud ROSSET - Publié le 18 janvier 2012
email

Pour faciliter cette navigation, utilisez la fonction de recherche fournie pour le fichier IntelliTrace lors de l’exécution en mode d’informations d’appels. Cliquez avec le bouton droit de la souris sur cette fonction et afin d’afficher le menu contextuel avec deux nouvelles options,

IntelliTrace : Le génie du débogage

« Search for this line in IntelliTrace » et « Search for this method in IntelliTrace »

La sélection de « Search for this line in IntelliTrace » ouvre la barre de recherche visible sur la figure 3 et lance une recherche. Dès que des résultats sont trouvés, les boutons premier, précédent, suivant et vers l’avant dans la barre sont activés et vous pouvez examiner toutes les occurrences trouvées de cette ligne particulière dans le fichier IntelliTrace.

Notez que les mêmes règles s’appliquent à cette recherche et à la méthode pas à pas. Ainsi, vous allez obtenir des résultats uniquement lorsque vous recherchez une ligne pour laquelle des données IntelliTrace ont été collectées. Ceci est aussi valable pour les noms de domaine. Dans le cas présent, l’utilisation du bouton précédent vous ramène à la deuxième fois où la fonction DoubleDown a été appelée.

La barre de recherche indique maintenant que vous sommes au deuxième des deux résultats pour la ligne et que nous pouvons revenir au résultat précédent si nous le souhaitons. Pour le moment, utilisez simplement la marge de navigation pour y accéder une fois et pour faire passer notre contexte à l’emplacement souhaité.

La fenêtre Locals affiche les données IntelliTrace collectées au niveau du point de contexte courant. Aux entrées et sorties de méthode, des données sont engrangées sur les paramètres et valeurs retournées, mais pour des raisons de taille et de vitesse, certaines limitations sont placées sur les éléments collectés. La collecte porte sur tous les types primitifs dans le paramètre ou la valeur de retour. D’autre part, nous engrangeons tous les types primitifs à partir d’un niveau d’objets qui figurent dans la valeur de retour ou les paramètres.

Comme le montre la figure 4, vous pouvez voir les valeurs pour le blackjack. Le joueur gagne, perd et réalise des push, mais pour les référence d’objet telles que la zone hand, l’indication {unknown} apparaît, car ces données n’ont pas été collectées. Dans cette fonction, le problème de solde est visible lorsque nous avons doublé la mise de 20 $ (Double Down). Après cette augmentation de 20 $ à 40 $, nous avons soustrait le montant total 40 $ de notre solde de compte au lieu des 20 $ seulement que nous avons ajoutés. Notre compte est donc passé dans le rouge, car nous avions déjà soustrait les 20 $ d’origine au moment de la mise (nous vérifions uniquement notre solde de compte par rapport à zéro au moment de la mise initiale et non lors de l’augmentation de notre main).

Le génie du débogage

La possibilité de revenir en arrière et d’examiner les paramètres et valeurs retournées avec IntelliTrace rend viable l’approche d’un débogage de qualité a posteriori. Dans notre exemple, nous avons eu des informations sur l’exception déclenchée, avons exploré les fonctions concernées pendant l’exécution de notre programme, examiné les variables et localisé le problème, le tout sans avoir à exécuter réellement l’application. D’autre part, avec le fichier iTrace fourni par le testeur, l’exécution déboguée a été le cheminement d’exécution précis suivi par le testeur lors de la consignation du bug. Grâce à IntelliTrace, le testeur n’a pas eu à spécifier les boutons sur lesquels il a cliqué pour générer le problème. Toutes les actions ont été capturées dans le fichier.

Grâce à la possibilité de capturer et de rejouer une multitude d’informations de débogage, IntelliTrace change la donne pour le débogage d’applications gérées avec Visual Studio. Non seulement il est plus facile et plus rapide pour les développeurs de déboguer des problèmes complexes, mais les testeurs peuvent aussi y trouver leur avantage en fournissant aux développeurs un enregistrement débogable de l’exécution de programme précise qui a abouti au plantage.

Exploitez toute la puissance d’Intellitrace · iTPro.fr

Déboguer les applications avec IntelliTrace · iTPro.fr

Téléchargez cette ressource

Préparer l’entreprise à l’IA et aux technologies interconnectées

Préparer l’entreprise à l’IA et aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 18 janvier 2012