R5.07 - Automatisation de la chaîne de production

Introduction à l'intégration continue des tests de charge JMeter avec Jenkins.


L’objectif de cette ressource est d'apprendre à concrétiser la chaîne de production d’une application.

Le TP s'est déroulé en plusieurs étapes :

  1. Conception des tests de charge avec JMeter

    Pour concevoir mes tests, j'ai d'abord créé 2 datasets avec des utilisateurs et des commandes pour simuler une utilisation réelle de l'application. Ensuite, j'ai créé un plan de test avec 2 scénarios :

    • Création d'un utilisateur
    • Création d'une commande

    J'ai ensuite paramétré mes tests pour qu'ils utilisent des assertions pour vérifier que les réponses des requêtes sont correctes.

  2. Création du projet Jenkins

    J'ai créé un projet Jenkins pour y intégrer les tests JMeter. Avant d'ajouter mon fichier jmx, je l'ai séparé en 2 nouveaux pour avoir la création de comptes dans l'un et la création de commandes dans l'autre. Pour finir, j'ai créé 2 étapes de build pour exécuter les tests JMeter.

  3. Build du projet Jenkins et résultat

    J'ai lancé le build de mon projet Jenkins pour exécuter les tests JMeter. J'ai pu voir les résultats des tests sous la forme d'un graphique dans Jenkins et les logs de JMeter.


Outils utilisés

  • JMeter
    Logiciel
  • Jenkins
    Logiciel

Énoncé du TP

Document

TP

Il contient les énoncés des exercices pour le TP.

Livrable produit

Fichier

Fichier jmx

Il contient les tests de charge réalisés avec JMeter.

Dataset

Fichier csv

Il contient les données des utilisateurs créés dans les tests.

Dataset

Fichier csv

Il contient les données des commandes créées dans les tests.

Document

Images du build

Il contient les images des différentes étapes du build Jenkins et des résultats des tests.


Conclusion

Cette ressource a permis de mettre en œuvre les compétences suivantes :
AC31.01 : Choisir et implémenter les architectures adaptées
et
AC31.03 : Intégrer des solutions dans un environnement de production.

J'estime que ce TP prouve ma réussite dans cette ressource puisque j'ai su mettre en place une chaîne de production d'une application.

J'ai appris à concevoir des tests de charge avec JMeter et à les intégrer dans un projet Jenkins. J'ai également appris à paramétrer mes tests avec des assertions pour vérifier que les réponses des requêtes sont correctes.

En terme d'acquisition de la compétence AC31.01, je pense qu'elle ne s'appliquait pas dans le cadre de ce TP.

En terme d'acquisition de la compétence AC31.03, je pense que j'ai su intégrer des solutions dans un environnement de production. En effet, j'ai réussi à intégrer les tests de charge dans un projet Jenkins, définir des étapes de build et des éléments de sortie.