Pourquoi tester les résultats de chaque requête dans un script de test de charge ?

Il peut être tentant dans un script de test de charge de ne pas tester le résultat de chaque requête. Mais en faisant cela, on s'expose à de graves problèmes pouvant fausser les résultats.

Car si le résultat de la requête n'est pas testé, on ne sait pas si elle s'exécute avec succès et donc le résultat final du tir de charge proposera des moyennes de valeurs complètement faussées.

Cela revient à additionner des patates avec des carottes et comme nous l'ont appris nos professeurs, cela n'a aucun sens.

Voici un exemple de script JMeter qui simule des visiteurs sur l'application PlantsByWebSphere livré avec WebSphere. (détaillé dans notre article précédent)

  • La transaction Selection_item est défectueuse et à la place d'afficher l'item choisi, elle ré-affiche la liste d'item (la source du problème est une variable mal corrélée).

 

  • Exécutons le script.

    Comme on peut le voir, aucune erreur n'est détectée. Ce qui est normal car le serveur envoie une réponse valide (HTTP 200) malgré le fait que le résultat attendu ne soit pas le bon. Donc on se retrouve avec des résultats qui ne veulent rien dire.

 

  • Maintenant ajoutons un test au résultat de la requête.

     

  • Rejouons le script.

    On voit bien que toutes les transactions Selection_item échouent.

 

  • Corrigeons le problème et rejouons le test.

    Comme on peut le voir, il n'y a plus d'erreur, et les résultats deviennent pertinents.

 

Mon conseil est « de bien tester les retours des transactions afin de ne pas avoir de mauvaise surprise ».

Laisser un commentaire

Merci d'effectuer cette opération simple pour valider le commentaire *

Mots-clés
RSS Feed