IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Le plug-in TPTP (Test & Performance Tools Platform)

 

Développons en Java avec Eclipse   0.80.1  
Copyright (C) 2003-2008 Jean-Michel DOUDOUX    (date de publication : 26/12/2008)

[ Précédent ] [ Sommaire ] [ Suivant ] [Télécharger ]      [Accueil ]

 

18. Le plug-in TPTP (Test & Performance Tools Platform)

 

chapitre 1 8

 

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 :

  • TPTP Platform : il se compose du Coeur du projet TPTP et propose des services de bases communs aux autres sous projets
  • Monitoring Tools : il propose des services pour collecter et analyser des informations concernant les ressources d'une application et du système
  • Testing Tools : il propose des services pour faciliter les tests
  • Tracing and profiling tools : il propose des services pour collecter et analyser des informations concernant les performances d'une application

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

 

18.1. Installation

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 :

  • tptp.runtime-TPTP-4.0.1-200510031151.zip : runtime du projet TPTP
  • NLpack1-tptp.runtime-TPTP-4.0.1-200510031151.zip : traductions du rutime du projet TPTP
  • tptpdc.win_ia32-TPTP-4.0.1-200510031151.zip : agent controller pour le système Windows
  • rac-nl1-tptp.sdk-TPTP-4.0.1-200509281716.zip : traductions de l'agent controller

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

 

18.2. Profiler une application

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.

 

18.3. Profiler une application Web

 

 

en construction
Cette section sera développée dans une version future de ce document

 

 

18.4. Les outils de tests

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.

 

18.4.1. Les tests avec JUnit

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.

 

 

en construction
Cette section sera développée dans une version future de ce document

 

 

 


[ Précédent ] [ Sommaire ] [ Suivant ] [Télécharger ]      [Accueil ]

Copyright (C) 2003-2008 Jean-Michel DOUDOUX. Vous pouvez copier, redistribuer et/ou modifier ce document selon les termes de la Licence de Documentation Libre GNU, Version 1.1 ou toute autre version ultérieure publiée par la Free Software Foundation; les Sections Invariantes étant constitués du chapitre Préambule, aucun Texte de Première de Couverture, et aucun Texte de Quatrième de Couverture. Une copie de la licence est incluse dans la section GNU FreeDocumentation Licence. La version la plus récente de cette licence est disponible à l'adresse : GNU Free Documentation Licence.