A quoi ça sert ?
Tests de performances
Endurance
Rapidité
Points importants
C'est du scala...
...mais on a pas besoin de le connaitre
C'est un langage compilé
Ressemble à behat
Ça réfère le point d'entrée des tests
À quoi ça sert ?
Donc on n'y touche PAS !!!
Différence Object vs Class
Object
Class
- Il ne peut pas être instancié
- Retourne toujours la même chose
- Utile pour définir un scénario
- Utile pour définir une étape
- Ne prend pas de paramètres
- Programmation fonctionnelle
- Pas de mutation
- Il peut être instancié
- Retourne une instance
- Peut prendre des paramètres
- Utile pour définir des classes abstraites ou parentes étendues par des objets
- Peut être surchargée
Les scénarios
- Nom unique
- Une méthode exec contenant la suite de tests
Requêter une page
- Méthode exec
- Méthode http contenant le nom de la page
- Méthode get pour le path
- Méthode check pour valider le status
Injecter des données
- Méthode inject
Injecter des utilisateurs
Méthodes : atOnceUsers, constantUsersPerSec, rampUsersPerSec, heavisideUsers
Attendre X secondes
nothingFor(X seconds)
Pendant X secondes
during(X seconds)
Exemple
Les formulaires
- On donne un titre au formulaire
- On lui donne une route en méthode post
- On donne un body de type Seq (tableau de string puis any ici)
- On passe le header en json
- On vérifie que le formulaire est bien validé par l'API
Les formulaires
- On instancie un formulaire
- On récupère l'instance située dans la variable spf
Le parcours random
- À la suite d'une étape de scénario
Gatling
By darkweak
Gatling
- 414