Architecture
- Les motivations de Gatling.
- Les différents types d’installations.
- Intégration avec les outils de build.
- Intégration avec les IDE.
.
- Scala et la programmation fonctionnelle.
- Utilité de la programmation déclarative.
Travaux pratiques
Installation de Gatling dans l'IDE et l’outil de build.
Premier scénario de test de charge
- Concepts de Gatling : simulation, scénario, injection de charge, action, checkpoint, feeder, pause.
- Les VU (Virtual Users) et les requêtes asynchrones.
- Éléments de syntaxe du DSL.
- Construction de requête HTTP, gestion des pauses.
- Différentes métriques de performance : temps de réponse, bande passante, débit, erreurs.
- Définition et réutilisation de cas d'usage (use case).
- Définition de groupes d’utilisateurs.
Travaux pratiques
Enregistrement d’un scénario, réorganisation en scénarios et simulation.
Gatling et les données dynamiques
- Session d'un VU et session API.
- L’Expression Language, une composante clé du DSL.
- Feeders : les différents types disponibles.
- Vérification de la réponse.
- Paramètres en ligne de commande.
Travaux pratiques
Manipulation de la session d'un Virtual User.
Spécificités HTTP
- Protocole HTTP : paramètres cœur et paramètres avancés.
- Requête HTTP : méthodes, en-têtes, paramètres, formulaires, authentification, multipart.
- Traitement de la réponse, extraction de données, transformation et sauvegarde.
- Gestion des cookies.
- Mise en place de SSL.
- Polling et WebSocket
.
Travaux pratiques
Spécification d'un scénario de test.
Gatling, utilisations avancées
- Rapports détaillés et graphiques.
- Extensions et intégrations avec d'autres outils (Maven, Gradle, Jenkins, etc).
- Gatling dans les pipelines CI/CD.
- Tests avec des protocoles spécifiques (WebSocket, JMS, etc.).