Test de performance API avec Apache JMeter

Comment mesurer les performances de mon API ?

 

Je vous propose une réponse, images à l’appui, de la configuration d’Apache JMeter et d’un plan de test depuis 0.
Vous retrouvez l’installation d’Apache JMeter à cette URL : https://jmeter.apache.org/download_jmeter.cgi

Commençons donc par la configuration en ajoutant le plugin « Custom Thread Group » utilisé dans notre exemple :

 

Une fois le plugin installé, on va commencer par ajouter au projet « Test Plan » les ressources nécessaires au lancement des tirs de performances.
On ajoute donc un module « HTTP Request Defaults » afin d’y renseigner l’URL du serveur et le port.

 

On ajoute un module qui va gérer l’ensemble des threads associés à cet appel, et on ajuste les variables pour simuler leur comportement pendant la génération des appels à la ressource API.

 

Puis un module « HTTP Request » définissant la méthode et la ressource cible demandée.
Dans notre cas, on variabilisera l’un des paramètres d’appel : « identifiant ».

Dans cet exemple, on ajoute un fichier CSV dans lequel on piochera les « identifiants » mis en paramètres dans l’appel GET de la ressource API grâce au module « CSV Data Set Config » que l’on paramètre comme suivant :

 

Voici un extrait de ce fichier :

NUMERO_CAS_TEST;IDENTIFIANT
00001;123
00002;456
00003;789
00004;159
00005;753
00006;793
00007;324
00008;578
00009;688
00010;457

Enfin, on ajoute des « Listener » qui vont nous permettre de visualiser des rapports au lancement du test de performance que l’on va faire.

Une fois le test lancé (clic sur la bouton vert « play »), on peut alors analyser les différents rapports émis via les « listeners » que l’on vient de rajouter via les 4 écrans des modules que l’on vient d’ajouter.