JMeter: petit test JMS Point à point avec ActiveMQ

Nous allons, dans ce petit billet, monter un scénario JMeter pour exécuter un test d’un serveur de Messagerie Orientée Messages (MOM). Pour ce dernier, nous allons prendre Apache ActiveMQ, sachant qu’il existe d’autres MOM comme IBM WebSphere MQ (ex-MQSeries), Tibco, etc.
Ici, nous allons montrer un test JMS en Point-à-Point. L’autre type de test possible en JMS est la Publication-Abonnement (Publisher-Subscriber), celui-ci fera l’objet d’un autre billet.

Un des pré-requis est d’avoir un serveur ActiveMQ démarré. Pour cela (et pour faire simple), il suffit de télécharger les fichiers binaires depuis le site Apache ActiveMQ, de décompresser l’archive, d’aller dans le répertoire de décompression et exécuter la commande suivante :

./bin/activemq start

Continuer la lecture de JMeter: petit test JMS Point à point avec ActiveMQ

Petite mise à jour du tutoriel JMeter : Test de charge distribué

Je viens d’effectuer une mise à jour du tutoriel JMeter sur la réalisation d’un test de charge distribué.

Il s’agissait principalement de mettre des captures d’écrans d’un JMeter « français », d’adapter le texte associé, mais également de corriger des fautes de style ou d’orthographes…

On notera que depuis 2008, la date d’écriture de la première version de ce tutoriel, il n’y a pas eu de changement au niveau JMeter sur la configuration d’un test distribué.

./

Changer l’adresse IP source d’une requête HTTP lors d’un test avec JMeter

[Article mis à jour le 08 décembre 2011, pour prise en compte de la version 2.5.1]

Depuis la version 2.4 de JMeter, une nouvelle fonctionnalité permet le changement d’adresse IP source pour les requêtes HTTP transmises par JMeter.

L’intérêt de cette possibilité est (par exemple) de permettre de faire des tests de charges sur des architectures techniques comportant un suivi de session par adresse IP (typiquement au niveau des répartiteurs de charges).

Voici un petit mode d’emploi. Continuer la lecture de Changer l’adresse IP source d’une requête HTTP lors d’un test avec JMeter

Envoyer en ligne de commande des paramètres à votre scénario JMeter

Voici un petit billet pour vous monter comment lancer JMeter en ligne de commande tout en paramétrant son scénario de test.

En effet, vous pouvez avoir l’idée ou l’envie de faire une série de test en jouant sur certains paramètres de votre scénario JMeter, le tout en ligne de commande. Par exemple, faire un test avec 1 utilisateur, puis le même test avec 10 utilisateurs, et le même avec 100 utilisateurs.

Bien évidemment vous pouvez les lancer depuis l’interface graphique de JMeter, à la suite, tout en modifiant le paramètre du nombre d’utilisateurs dans l’interface, mais c’est trop facile ;-).

Donc pour le faire en ligne de commande, il faut d’abord passer par l’interface graphique JMeter. En effet, nous avons besoin d’utiliser une fonction JMeter qui va permettre de lire une propriété JMeter et renvoyer sa valeur. Cette fonction doit être appelée à la place de la valeur du champ correspondant au paramètre que l’on veut rendre « paramétrable »…

Le mieux est d’abord de voir la capture d’écran :

Les différents ${__P(xxx,yyy)} correspondent à notre fonction JMeter qui permet de lire une propriété JMeter, et qui la renvoie. Continuer la lecture de Envoyer en ligne de commande des paramètres à votre scénario JMeter

Tutoriel sur l’audit de performances d’une application en Java EE

Un petit billet pour vous inviter à découvrir ce tutoriel de Antonio Gomes Rodrigues, dont le sujet est l’audit de performance d’une application en Java EE.

C’est un tutoriel extrêmement complet qui couvre de nombreux domaines qui sont liées à la performance en général, et plus particulièrement sur une application J2EE.

Le tutoriel couvre les procédures de test (préparation, principaux métrics), le test de charges avec JMeter, et une dernière partie sur l’identification et la correction des problèmes. On a donc ainsi, l’entrée, le plat et le dessert pour optimiser nos applications J2EE.

La section sur l’identification et la correction des problèmes est particulière exhaustive sur les problèmes que l’on peut en effet rencontrer dans une application. Elle sera très utile pour faire une check-list de vérification si un souci arrive sur son application.

Voilà, c’est à mettre dans vos marques-pages.

./

Faire un graphique de résultats JMeter avec Eclipse BIRT

Un billet pour pointer vers cet autre billet de la société Zenika, qui explique le comment-faire un rapport (graphique) de résultats suite à un test JMeter.

Dans le billet pointé, la source de données est le fichier de résultats JMeter au format JTL (donc XML). BIRT sait le lire ‘nativement’. Mais j’ajouterai qu’il est préférable d’avoir un format CSV pour l’enregistrement des données d’un JMeter (plus rapide et plus économe en taille), et que BIRT sait aussi lire du CSV nativement (à condition d’avoir une virgule comme séparateur (et non un point-virgule comme j’ai tendance à le faire dans mes CSV…))

Enfin, tout cela pour dire, que c’est un bon article à suivre, d’autant que cela peut épater les gens de voir que l’on utilise pas le pauvre (mais pratique) Excel ou OpenOffice pour faire ses graphiques, mais un bel outil de génération de rapports / graphiques.

Maintenant, j’aimerai bien pousser plus loin le bouchon avec JMeter/BIRT pour voir si on peut « préparer » des rapports (au sens PDF) avec tableaux et graphiques à partir de données JMeter d’un même test (qui serait exécuté N fois) afin d’avoir un rapport assez complet en quelques minutes après la fin d’un tir. Ce qui semble carrément possible avec BIRT. A suivre…

Rafraichissement du tutoriel pour faire son premier test de charges avec JMeter

Je viens de donner un petit coup de jeune au premier tutoriel JMeter de ce blog. Il avait été fait en 2007, avec la version 2.3RC4 de JMeter, avec des captures de l’interface en anglais, tellement la version française était incomplète et erronée.

Aujourd’hui, c’est la version 2.3.4, et son amélioration de la localisation en français. Donc, voici la nouvelle version de ce tutoriel « JMeter : Test de charges d’un site Web, mode d’emploi », qui maintenant a des captures de l’interface en français. J’en ai également profité pour revoir certains textes et/ou explications.

Bon courage dans vos tests !

./

JMeter : utilisation de l’élément JDBC comme source de données pour un test de charge (partie 2)

Nous revoilà dans la deuxième partie de ce tutoriel. Pour rappel, nous étions dans la mise en œuvre d’un test de charges, dont les données injectées proviennent directement d’une base de données et ont été récupérées par JMeter, le tout expliqué dans cette partie. Continuer la lecture de JMeter : utilisation de l’élément JDBC comme source de données pour un test de charge (partie 2)

JMeter : utilisation de l’élément JDBC comme source de données pour un test de charge (partie 1)

Avec la version 2.3.3, JMeter nous propose une amélioration de l’échantillon JDBC, qui permet de récupérer les valeurs de champs d’une requête SQL de type SELECT et de les placer dans des variables JMeter.

D’où l’idée suivante : Pourquoi ne pas utiliser une base de données comme source de données pour un test de charge ?

Tout d’abord les pré-requis :

  • Une base de données bien entendu, avec le pilote JDBC approprié, à placer dans Jmeter_Home/lib
  • Dans la base de données, une table avec une liste d’éléments (ici j’ai repris mon fichier BOXERS que j’ai inséré en base)

Bon voyons un peu comment faire. Ci-dessous le plan de test à mettre en œuvre :

Il y a deux parties :

JMeter : utiliser SQLite pour traiter les résultats d’un test de charges par palier

Dans ce billet, j’indique qu’il est possible d’utiliser SQLite pour traiter les données d’un tir de charges par palier (tutoriel ici).

Voici maintenant le mode d’emploi pour utiliser SQLite afin de traiter ses résultats de tir JMeter. Continuer la lecture de JMeter : utiliser SQLite pour traiter les résultats d’un test de charges par palier