Ce guide d'utilisation de l'outil est applicable avec les systèmes Microsoft Windows et UNIX.
Les outils PurifyPlus comprennent Rational Purify, Rational PureCoverage et Rational Quantify.
Pour en savoir
plus sur les outils PurifyPlus, lisez le manuel Guide d'initiation de PurifyPlus (version Windows ou UNIX).
Pour
obtenir des informations détaillées sur l'utilisation des outils PurifyPlus, référez-vous à l'aide en ligne de l'outil.
Vous pouvez utiliser les outils PurifyPlus dans les cas suivants :
-
Détecter des fuites et erreurs de mémoire (programmes C/C++ sous Windows et UNIX). Utilisez Purify pour
détecter les erreurs et les fuites dans l'application testée.
-
Surveiller le taux de couverture du code (Windows et UNIX). Utilisez PureCoverage pour afficher vos écarts
dans votre test et pour vous alerter pour les régressions.
-
Profiler les performances (Windows et UNIX). Utilisez Quantify pour vous avertir si de nouveaux archivages
dégradent les performances.
L'exécution des suites de test avec les outils PurifyPlus se traduit par un code fiable et sans erreurs pour une
efficacité maximale.
Etapes outil
Pour implémenter des tests à l'aide des outils PurifyPlus :
1. Exécuter le programme sous Purify afin de rassembler les données de fuite d'erreur
(programmes C/C++ uniquement)
Purify détecte les erreurs d'exécution, y compris les fuites de mémoire, dans l'application testée et dans les
composants utilisés. Il génère des rapports sur des erreurs de mémoire comme des erreurs de limites de tableau, un
accès via des pointeurs ambigus, des lectures de mémoire non initialisées, des erreurs d'affectation de mémoire et des
fuites de mémoire afin qu'elles soient résolues avant de provoquer des dégâts.
Commencez par intégrer Purify dans vos scripts Perl, vos fichiers de traitement par lots et vos fichiers makefile.
-
Sous Windows , modifiez les lignes de commande qui exécutent votre programme <ProgramName>.exe
Purify /SaveTextData <ProgramName>.exe
-
-
Sous UNIX, modifiez la ligne de lien et de compilation :
% purify -logfile=<filename> cc -g <program_name>.c
L'utilisation de l'option /SaveTextData -logfile sous UNIX aura
pour conséquence de faire fonctionner Purify sans l'interface utilisateur, et, lorsque vous exécutez le programme à
partir de votre script, d'envoyer les données d'erreur et de fuite dans un fichier de sortie texte lorsque votre
programme se termine.
Examinez vous-même ce fichier de sortie ou écrivez des scripts pour l'analyser. Vous pouvez utiliser les messages
d'erreur et d'avertissement dans le fichier comme critères supplémentaires pour vos résultats de test.
Vous pouvez regrouper les données de couverture pour les mêmes exécutions, si vous avez installé PureCoverage, en
ajoutant l'option /Coverage (Windows) ou en ajoutant purecov
purify (UNIX). A l'aide des données de couverture, vous pouvez également trouver les
parties de votre code pour lesquelles la présence d'erreurs n'a pas été vérifiée. Pour plus d'informations sur
l'utilisation des données de couverture, voir l'étape 2 de ce guide d'utilisation de l'outil.
Remarques :
-
Utilisez l'API Purify afin de contrôler le regroupement des données à partir de votre programme.
-
Purify possède également des options de ligne de commande vous permettant d'enregistrer des données de test en tant
que fichiers binaires que vous pouvez examiner à l'aide de l'interface utilisateur graphique de Purify ; ce sujet
est abordé dans le guide d'utilisation de l'outil "Analyse des performances d'exécution à l'aide des outils
Rational PurifyPlus."
Pour plus d'informations, reportez-vous aux rubriques suivantes dans l'index de l'aide en ligne de Purify :
-
exécution de programmes
-
messages d'erreur
-
options
-
fonctions d'API
-
enregistrement des données
2. Exécuter le programme sous PureCoverage afin de contrôler le taux de couverture du
code.
PureCoverage fournit des informations relatives au taux de couverture du code pertinentes au niveau de la fonction et
de la ligne. Utilisez PureCoverage pour vos tests réalisés pendant la nuit afin de vous assurer que les tests suivent
le rythme du développement du code.
Commencez par intégrer PureCoverage dans vos scripts Perl, vos fichiers de traitement par lots et vos fichiers makefile
existants.
-
Sous Windows, modifiez les lignes de commande qui exécutent votre programme ou le fichier de classe Java, le
fichier .jar ou l'applet pour inclure PureCoverage:
Pour les programmes C/C++ : Coverage /SaveTextData <ProgramName>.exe
Pour les fichiers de classe Java : Coverage /SaveTextData /Java Java.exe
<ClassName>.class
Pour les programmes de code gérés par .NET : Coverage /SaveTextData /Net
<ProgramName>.exe
L'utilisation de l'option /SaveTextData aura pour conséquence de faire fonctionner
PureCoverage sans l'interface utilisateur, et, lorsque vous exécutez le programme à partir de votre script,
d'envoyer les données dans un fichier de sortie texte lorsque votre programme se termine.
-
-
Sous UNIX, modifiez la ligne de lien et de compilation :
Pour les programmes C/C++ : % purecov cc -g <program_name>.c
Pour les fichiers de classe Java : % purecov -java java <class_name>
Utilisez l'option -export de PureCoverage après avoir quitté le programme afin
d'écrire les données de couverture dans un fichier de sortie texte.
Au fur et à mesure que vous essayez votre code, PureCoverage enregistre les données concernant les lignes et les
fonctions utilisées. Vous pouvez appeler des fonctions d'API PureCoverage à partir de votre programme afin
d'enregistrer des données à des points spécifiques de votre code ou de collecter des données pour certaines routines.
Lorsque vous quittez le programme, vous disposez d'un ensemble de données précis vous indiquant les lignes et les
fonctions qui ont été ou non couvertes par votre test.
Vous pouvez fusionner des données de couverture à partir de plusieurs exécutions ou les conserver dans des fichiers
séparés afin d'analyser des changements de taux de couverture.
Utilisez des scripts pour comparer des données actuelles avec des données collectées auparavant. Si le taux de
couverture est en baisse, il est possible que vos tests ne puissent pas essayer un nouveau code ou que le nouveau code
ait introduit un incident se traduisant par l'impossibilité de tester une grande partie du code. Utilisez un outil de
test comme Rational Robot ou Rational Visual Test pour écrire des cas de test qui mettent en pratique le nouveau code.
Remarque : vous pouvez examiner des fichiers de données de couverture binaires à l'aide de l'interface
utilisateur graphique de PureCoverage.
Pour
plus d'informations, référez-vous aux rubriques suivantes de l'index de l'aide en ligne de PureCoverage :
-
exécution de programmes
-
options
-
fonctions d'API
-
enregistrement des données
-
comparaison des données
3. Exécuter le programme sous Quantify pour profiler les performances
Quantify fournit un ensemble complet et précis de données de performance pour votre programme et ses composants afin
que vous puissiez contrôler les performances et identifier les régressions de manière précoce dans le cycle de test et de
développement.
Commencez par intégrer Quantify dans vos scripts Perl, vos fichiers de traitement par lots et vos fichiers makefile
existants.
-
Sous Windows, modifiez les lignes de commande qui exécutent votre programme ou le fichier de classe, le
fichier .jar ou l'applet pour inclure Quantify:
Pour les programmes C/C++ : Quantify /SaveTextData <ProgramName>.exe
Pour les fichiers de classe Java : Quantify /SaveTextData /Java Java.exe
<ClassName>.class
Pour les programmes de code gérés par .NET : Quantify /SaveTextData /Net
<ProgramName>.exe
L'utilisation de l'option /SaveTextData aura pour conséquence de faire fonctionner
Quantify sans l'interface utilisateur, et, lorsque vous exécutez le programme à partir de votre script, d'envoyer
les données dans un fichier de sortie texte lorsque votre programme se termine.
-
-
Sous UNIX, modifiez la ligne de lien et de compilation :
Pour les programmes C/C++ : % quantify cc -g <program_name>.c
Pour les fichiers de classe Java : % quantify -java java <class_name>
Utilisez l'option -export de Quantify après avoir quitté le programme afin d'écrire
les données de performance dans un fichier de sortie texte.
Lorsque vous mettez votre code en pratique, Quantify enregistre des données sur les performances de votre programme.
Vous pouvez utiliser des fonctions d'API pour suspendre et synthétiser l'enregistrement de données à tout moment et
limiter ainsi le profilage à des parties de code spécifiques. Vous pouvez également enregistrer des données à des
points spécifiques de l'exécution de votre code ou collecter des données de performance uniquement pour des routines
spécifiques. Lorsque vous quittez votre programme, Quantify dispose d'un profil précis de ses performances.
Vous pouvez écrire des scripts qui comparent des ensembles de données et génèrent des rapports sur des changements de
performance :
-
Les dégradations de performance peuvent indiquer que le code le plus récemment archivé a ralenti le programme.
Analysez les données que vous avez collectées pour trouver les sections du programme ayant des performances non
acceptables.
-
Les améliorations marquées peuvent indiquer que les développeurs ont amélioré leur code ou que vos tests ont cessé
de mettre en pratique de larges sections de code. Vérifiez vos données de couverture afin de vous assurer que vous
atteignez toujours les niveaux de couverture précédents.
Remarque :Quantify peut également enregistrer des données de test en tant que fichiers binaires que vous pouvez
examiner à l'aide de l'interface utilisateur graphique Quantify ; ce sujet est abordé dans le guide d'utilisation de
l'outil "Analyse des performances d'exécution à l'aide des outils Rational PurifyPlus."
Pour plus d'informations, référez-vous aux rubriques suivantes de l'index de l'aide en ligne de Quantify :
-
exécution de programmes
-
options
-
fonctions d'API
-
enregistrement des données
-
comparaison des données
|