Notes tests de charge HTTP avec Gatling

Voir aussi :

Apache JMeter

Serveur Web : tests de charge en Python avec Locust FIXME2

Install IDE pour dev

Voir :

https://gatling.io/open-source/gatling-demo/video-demo/?submissionGuid=efc5d076-c18a-46ae-b1ca-4669580bfd05

https://www.youtube.com/watch?v=5MYuQBQZ8Ys

https://github.com/gatling/gatling-tutorial

Introduction à Gatling et Scala (obsolète mais intéressant)

https://www.james-willett.com/gatling-load-testing-complete-guide/

Install IDE Scala et tous le reste (pas nécessaire)

apt install python-pip python3-pip snapd apt-get install openjdk-11-jdk maven wget https://downloads.lightbend.com/scala/2.12.2/scala-2.12.2.deb dpkg -i scala-2.12.2.deb snap install intellij-idea-community --classic

Lancement IDE

/snap/bin/intellij-idea-community

getling recorder

./gatling-charts-highcharts-bundle-3.6.0/bin/recorder.sh

Lancement

simulation/plop/test1.scala

package plop.hpplop.simulation.mainProfile import scala.concurrent.duration._ import io.gatling.core.Predef._ import io.gatling.http.Predef._ import io.gatling.jdbc.Predef._ class ChargeHPO extends Simulation { val durationTime = scala.util.Properties.envOrElse("DURATION", "3" ) val minUsers = scala.util.Properties.envOrElse("MINUSER", "2") val maxUsers = scala.util.Properties.envOrElse("MAXUSER", "3") val baseUrl = scala.util.Properties.envOrElse("BASEURL", "") println(baseUrl.toString) val httpProtocol = http.baseUrl(baseUrl.toString) val headers_hpo = Map( "Host" -> "acme.fr", ) val scn = scenario("HP Plop") .exec(http("Root") .get("/") .disableFollowRedirect .check(status is (301)) .headers(headers_hpo) ) setUp( scn.inject( nothingFor(10 seconds), rampUsersPerSec(minUsers.toInt) to maxUsers.toInt during (durationTime.toInt minutes) ).protocols(httpProtocol) ) }
env BASEURL=http://acme.fr ~/code/http/gatling-charts-highcharts-bundle-3.6.0/bin/gatling.sh -sf simulations/plop/ -rd "Test1 "

Pb

Erreur avec l'IDE

gatling-tutorial/src/test/scala/Engine.scala
object gatling is not a member of package io
import io.gatling.app.Gatling

Notes Scala

Voir aussi : Kotlin