Petit tour des nouveautés Jakarta JMeter 2.4


La version 2.4 est une version majeure qui apporte quelques fonctionnalités et corrige plusieurs bugs.
Côté scripting Web pas de changement profond :
  • le proxy d’enregistrement a maintenant une vrai gestion des sessions HTTPS. En 2.3, il faisait du spoofing, ce qui marchait dans la plupart des cas, mais pas toujours. Par ailleurs, il fallait penser à changer le protocole pour http: et souvent on oubliait ce détail et on galérait longtemps.
  • l’option par défaut du HTTP Redirect change. La valeur par défaut n’est plus « Follow Redirects » mais « Redirect Automatically » pour permettre la capture des cookies placés pendant les redirects. Cela n’affecte pas les scénarios existants, seulement les nouveaux HTTP Samplers
Attention pour les gens qui aiment les sasfepu, JMeter nécessite maintenant Java 5.
Les évolutions ont plutôt porté sur les autres protocoles et l’outillage :
  • l’ajout de protocoles mail supplémentaires
  • des améliorations sur le protocole JMS (support des Topics et des Queues et en Publish/Subscribe et corrections de bugs)
  • le support des samplers en JUnit4
  • l’intégration de la JSR 223 – Scripting for the JavaTM Platform
  • l’amélioration des listeners qui reportent les résultats (ResultTree, outils de statistiques)
La liste complète des changements et des corrections se trouve sur la release note http://jakarta.apache.org/jmeter/changes.html
Passons à l’expérimentation
Toujours le même problème de menus à moitié en anglais et à moitié en français si on choisit la langue anglais sur un OS en français.
Enregistrons un script vite fait pour une recherche sur Google. Le proxy d’enregistrement, n’a pas changé. Le script généré non plus.

view Results Tree - réponse en affichage texte

Une nouvelle assertion la Comparison Assertion qui permet de lever une erreur s’il y a un écart trop grand entre un relevé initial de référence et les suivants, sur la base du contenu ou du temps de réponse.
Quelques surprises du côté du view Results Tree (arbre de résultats). Tiens au passage changer la langue fait un clear des résultats. Heureusement que mon test dure 10s.
Un nouveau mode d’affichage du résultat du sample en tableau (mode décodé ou parsed en anglais).
Pas de changement pour la requête.
Pour la réponse, une fonctionnalité de recherche dans le résultat a été ajoutée.  Elle permet de rechercher un texte dans le résultat en mode exact ou en expression régulière (voir schéma ci-dessus).

view Result Tree - réponse en HTML

Bon , là  je me suis demandée pendant un bon moment où était la case à cocher pour afficher en HTML, parce que quand même c’est pratique pour vérifier ce qu’on a reçu.
En fait, le sélecteur à été déplacé sous la liste des samples. Il permet de choisir entre HTML, JSON, XML, texte brut et un testeur de RegExp (schéma à droite). Attention, les fichiers manipulés et générés sont stockés dans le répertoire où est lancé jmeter. C’est un peu le bazar à la longue.
Tiens, tiens, un évaluateur d’expressions régulières. Ce truc là devrait être bien pratique pour tester les expressions régulières des assertions et des extractions de texte dans les résultats sans aller chercher des outils externes comme QuickREx.

Testeur d'expressions régulières

Les Aggregate report et Summary report ne semblent pas avoir changé, ni la vue tableau. JMeter annonce des optimisations de consommation de ressources sur ces composants. Je n’utilise jamais les autres vues car je ne suis jamais en mode GUI pendant les tests et je fais toujours les stats et les courbes avec R à partir du log.
Que fait le nouveau listener JSR 223 ? Il permet d’utiliser du code de script dans le traitement des résultats. C’est l’équivalent des listeners BeanShell et BSF mais en plus standard, avec le support de plus de langage et en particulier Groovy.
Vous trouverez là un article très complet sur le scripting dans JMeter en JSR 223 dans les différents composants et les prérequis : http://blog.zenika.com/index.php?post/2009/07/29/INTEGRATION-DU-SUPPORT-DU-JSR223-DANS-JMETER
J’ai aussi trouvé un autre article en français sur JMeter 2.4 en cherchant des informations sur la JSR 223 dans JMeter. Il est plus général et couvre certains aspects que je n’ai pas couvert parce que je ne les utilise pas en ce moment : http://blog.milamberspace.net/index.php/2010/07/14/apache-jmeter-2-4-est-sorti-694.html
Le format d’enregistrement des résultats en mode non-gui est resté identique.
<?xml version="1.0" encoding="UTF-8"?>
<testResults version="1.2">

<httpSample t="207" lt="57" ts="1279471780513" s="true" lb="/search" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" by="54101"/>
<sample t="1209" lt="752" ts="1279471780049" s="true" lb="Contrôleur Transaction" rc="200" rm="Number of samples in transaction : 8, number of failing samples : 0" tn="Thread Group 1-1" dt="" by="190509"/>

</testResults>

Si cet article vous a intéressé, vous trouverez ici d’autres articles de ce site qui peuvent vous intéresser

2 réflexions sur “Petit tour des nouveautés Jakarta JMeter 2.4

  1. Bonjour,
    quelqu’un sait il si le moteur du nouveau JMeter est capable d’afficher du javascript? Sinon, existe t’il un autre moyen de contourner le problème? Je voudrais savoir cela car j’effectue des tests de charge sur une applications web qui fonctionne partiellement avec js.

    Cordialement,
    Florian

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s