Gatling Performance Testing Cheat Sheet (Scala DSL)
1. Basic Structure
------------------
import io.gatling.core.Predef._
import io.gatling.http.Predef._
import scala.concurrent.duration._
class SimulationName extends Simulation {
val httpProtocol = http
.baseUrl("https://example.com")
.acceptHeader("application/json")
val scn = scenario("ScenarioName")
.exec(http("RequestName")
.get("/endpoint")
.check(status.is(200)))
setUp(
scn.inject(atOnceUsers(10))
).protocols(httpProtocol)
}
2. HTTP Methods
---------------
http("Get Request").get("/getEndpoint")
http("Post Request").post("/postEndpoint").body(StringBody("{"key":"value"}")).asJson
http("Put Request").put("/putEndpoint").body(StringBody("{"key":"value"}")).asJson
http("Delete Request").delete("/deleteEndpoint")
3. Headers and Body
-------------------
.headers(Map("Content-Type" -> "application/json"))
.body(StringBody("{"key":"value"}")).asJson
.body(RawFileBody("data.json"))
(Additional content truncated for brevity)