Home » Divers » Faire des tests de montée en charge avec Gatling

Faire des tests de montée en charge avec Gatling

gatling-logoPrésentation

Aujourd’hui, je vais vous présenter un outil très utile : Gatling.

Cet outil permet de tester les montées en charge de projet Web.
Vous pouvez décrire, avec des scénarii déterminé, le comportement des utilisateurs sur le projet Web. Vous pouvez même voir comment réagi le site Web avec un nombres défini d’utilisateurs selon le moment de la journée.

Gatling peut être utilisé sur Windows, Linux et Mac.

Fonctionnement de Gatling

Il y a deux modes sous Gatling : le mode recorder (ou graphique), et le mode Gatling (ou ligne de commande).
Donc selon le mode, vous enregistrez le scénario en mode graphique, ou vous écrivez vous même les scénarii en les programmant.
Il faut savoir que les scénarii s’écrivent en SCALA.

Exemple de scénario

Voici un exemple de scénario simple. Il est en 3 phases distinctes.
Il va tout d’abord sur la page d’accueil de mon blog : https://jf-blog.fr/.
Ensuite, il fait une recherche sur ce même blog pour le mot Web.
Il finit par une recherche sur le mot Ubuntu.

//__Importation des bibliothèques
import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._
import scala.concurrent.duration._

//__Création de la classe Blog
class Blog extends Simulation {
 //__ Mise en place du scénario
 val scn = scenario("Recherche d'article")
   .exec(
      http("ouverture Blog")
        .get("https://jf-blog.fr/")
   )
   .pause(500 milliseconds)
   .exec(
      http("recherche sur web")
        .get("https://jf-blog.fr/")
        .queryParam( """s""", """web""")
   )
   .pause(500 milliseconds)
   .exec(
      http("recherche sur ubuntu")
        .get("https://jf-blog.fr/")
        .queryParam( """s""", """ubuntu""")
   )

  setUp(scn.inject(atOnceUsers(1)))

}

Résultat

Au final, après avoir testé ce scénario sur mon blog, Gatling me donne les résultats.
Je me retrouve, alors, avec un dossier complet. Il suffit de cliquer sur le fichier index.html, et on se retrouve avec une page ressemblant à l’image ci-dessous.

test-gatling-1

Cette page (et les autres) rassemblent les informations lié au scénario, et vous montre comment le projet web réagi.

Les tests donneront des résultats différents selon plusieurs points.
Le débit est un de ces points, tout comme le nombre d’utilisateur faisant les tests, etc…

Liens Gatling

Pour en savoir plus sur Gatling, je vous laisse différents liens :
Site de Gatling : http://gatling.io/
Download : http://gatling.io/#/download
Documentation : http://gatling.io/#/docs

Liens Scala

Pour en savoir plus sur Scala
Scala sur Wikipédia : http://fr.wikipedia.org/wiki/Scala_%28langage%29
Site sur Scala : http://www.scala-lang.org/

Posté dans Divers

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.