Développons en Java avec Eclipse 0.80.1 | |
Copyright (C) 2003-2008 Jean-Michel DOUDOUX | (date de publication : 26/12/2008) |
|
Le projet TPTP (Test & Performance Tools Platform) a pour but de proposer un framework permettant de fournir des services de mesures de performance et d'automatisation de tests.
Historiquement, le projet TPTP était diffusé sous le nom Hyades.
Il se compose actuellement de 4 sous projets :
La page du projet TPTP est à l'url : http://www.eclipse.org/tptp/
La version mise en oeuvre dans ce chapitre est la 4.1
Il est possible d'installer le plug-in par l'outil de mise à jour de lgoiciels ou par un téléchargement et une décompression des fichiers requis. Dans ce dernier cas, il faut télécharger sur le site du projet les fichiers :
L'installation de la partie runtime du plug-in se fait comme pour tout autre plug-in en décompressant les archives.
L'agent controller est un processus dépendant du système sur lequel il s'exécute pour assurer le lien entre la JVM et le plug in TPTP.
Il faut décompresser le fichier tptpdc.win_ia32-TPTP-4.0.1-200510031151.zip et rac-nl1-tptp.sdk-TPTP-4.0.1-200509281716.zip dans le répertoire d'installation Eclipse (il est recommandé de réaliser cette décompression dans un répertoire dédié hors du répertoire d'installation d'Eclipse).
Il faut ensuite exécuter le fichier SetConfig.bat contenu dans le répertoire bin décompressé de l'agent controller.
Il suffit de valider chacune des réponses par un appui sur la touche Entrée sauf si la valeur proposée ne convient pas.
Il faut ajouter le chemin du répertoire bin dans la variable PATH du système
Il faut créer une nouvelle variable nommée RASERVER_HOME ayant pour valeur le chemin d'installation de l'agent controller
La classe ci-dessous est utilisée dans cette section.
Exemple : |
public class TestTP {
/**
* @param args
*/
public static void main(String[] args) {
StringBuffer b = new StringBuffer();
for(int i=0; i<1000; i++) {
b.append("texte ");
}
}
} |
Pour utiliser le plug-in TPTP, il est nécessaire de lancer l'agent controller. Le plus simple est d'utiliser l'option « Exécuter... » du menu démarrer et de demander l'exécution de la commande raserver.
Cliquer sur le bouton « OK » pour lancer l'agent controller.
Pour créer une nouvelle configuration, sélectionner l'option « Profiler en tant que / Profiler ... » du menu contextuel de la classe dans l'explorateur de packages
La boîte de dialogue « Profiler » s'ouvre
Sélectionner « Application Java » et cliquer sur le bouton « Nouveau »
Pour définir un profil, il faut cliquer sur l'onglet « Profilage »
Sélectionner le jeu de profilage « Historique de l'exécution - Détails graphiques complets » et cliquer sur le bouton « Editer ... »
Cliquer sur le bouton « Suivant »
Cliquer sur le bouton « Suivant »
Cliquer sur le bouton « Terminer » pour revenir à la boîte de dialogue « Profiler ».
Si des modifications sont apportées lors d'un clic sur le bouton Fermer, une boite de dialogue permet de demander la sauvegarde des modifications :
Cliquer sur le bouton « Profiler ».
Cliquer sur « Oui »
Le message ci-dessous est affiché si la communication avec l'agent Controller n'est pas possible.
Dans ce cas, il est nécessaire de lancer l'Agent Controller.
La perspective « Profilage et journalisation » s'ouvre.
Les traitements sont exécutés pour permettre la collecte des données :
Une fois que toutes les données sont collectées, la tache « Profilage » est arrêtée :
Pour afficher les résultats, il suffit de double cliquer sur « Analyse de la durée d'exécution ». Par défaut, ce sont les informations au niveau package qui sont affichées.
L'intérêt de ces données de permettre de détecter des points faibles du code. Par exemple, voici les résultats du code équivalent ci-dessous :
Exemple : |
public class TestTP {
/**
* @param args
*/
public static void main(String[] args) {
String s = new String("");
for(int i=0; i<1000; i++) {
s = s + "texte ";
}
}
} |
L'utilisation de l'objet StringBuffer est ainsi justifiée : pour s'en convaincre il suffit de comparer le temps cumulé d'exécution des deux versions.
Il faut cliquer sur le bouton pour que se soient les informations au niveau classe qui soient affichées
Il faut cliquer sur le bouton pour que se soient les informations au niveau méthode qui soient affichées.
Il faut cliquer sur le bouton pour que se soient les informations au niveau instance qui soient affichées.
Le bouton permet de basculer sur la perspective « Java » pour afficher la source.
Le bouton permet d'afficher les résultats sous forme de pourcentage.
Le bouton permet de sélectionner les informations qui sont affichées.
Le bouton permet d'exporter les résultats dans un fichier HTML.
Il est possible d'obtenir d'autres vues en utilisant l'option « Ouvrir avec »
L'option « Interactions de classes UML2 » affiche sous la forme d'un diagramme de séquences les échanges des traitements profilés.
En fonction de la configuration de profilage utilisée, plusieurs vues sont proposées.
|
Cette section sera développée dans une version future de ce document
|
Le plug-in TPTP propose une série d'outils permettant de réaliser des tests d'une application : ces tests peuvent utiliser JUnit, concerné les performances d'une application Web ou être manuel.
Dans l'explorateur de package, sélectionner un package et utiliser l'option « Nouveau / Autre ... » du menu contextuel
Il faut sélectionner « Test / Test JUnit TPTP » et cliquer sur le bouton « Suivant ».
Cliquez sur le bouton « Suivant ».
Il faut saisir le nom du test et cliquer et cliquer sur le bouton « Suivant ».
Cliquez sur le bouton « suivant »
Saisissez la description du test et cliquez sur le bouton « Terminer ».
Une entité avec l'extension .testsuite est créée avec le nom fournie dans l'assistant.
La vue « Test JUnit TPTP » s'ouvre.
L'onglet « Généralités » affiche des informations générales sur le test.
|
Cette section sera développée dans une version future de ce document
|
|