Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/gatling/gatling.io-doc/llms.txt

Use this file to discover all available pages before exploring further.

Gatling supports two distinct SDK families: the JVM SDK for Java, Kotlin, and Scala, and the JavaScript SDK for JavaScript and TypeScript. Both families expose the same load testing engine and produce identical HTML reports, so your choice of language is purely about ecosystem fit. This guide covers the installation process for every supported path: Maven, Gradle, sbt, and the JavaScript CLI. It also covers IDE setup and the standalone bundle for offline environments.

Requirements

  • 64-bit OpenJDK LTS, versions 11 through 25. Java 17 or 21 is recommended. The Azul JDK is a reliable choice.
  • Maven 3.6.3 or later — or use the Maven Wrapper bundled with the demo project (no system-wide Maven needed).
  • Git (optional, for cloning).
Verify your environment before continuing:
java -version
mvn -version
Gatling launch scripts and the Maven plugin respect the JAVA_HOME environment variable. If JAVA_HOME points at the wrong runtime you may see Unsupported major.minor version errors. Confirm the value before running tests.

Download the Starter Project

The quickest path is the official Maven demo project. It ships with a Maven Wrapper so you don’t need Maven installed separately.
git clone https://github.com/gatling/gatling-maven-plugin-demo-java.git
cd gatling-maven-plugin-demo-java
./mvnw clean install
Alternatively, download the ZIP archive directly from GitHub and extract it, then run ./mvnw clean install from the project root.
On Windows, replace ./mvnw with mvnw.cmd in all commands below.

Run the Bundled Demo

Confirm that everything is wired up correctly by executing the demo simulation:
./mvnw gatling:test
The plugin will prompt you to select a simulation if more than one is present, or run the only available one automatically. The HTML report is written to target/gatling/.To run a specific simulation without the interactive prompt:
./mvnw gatling:test -Dgatling.simulationClass=computerdatabase.ComputerDatabaseSimulation

Launch the Recorder

The Gatling Recorder captures browser traffic and converts it into a simulation script:
# Linux / macOS
./mvnw gatling:recorder

# Windows
mvnw.cmd gatling:recorder

Standalone Bundle

The standalone bundle is intended for environments without internet access (for example, behind a corporate firewall). For all other situations, the Maven plugin is recommended — it is lighter and easier to commit to a Git repository.
The standalone bundle supports Java only — not Kotlin or Scala. For those languages, use a Maven, Gradle, or sbt project.
The bundle is based on a Maven Wrapper. Extract it, then open the project in an IDE such as IntelliJ IDEA. Bundle directory structure:
PathPurpose
src/test/javaYour simulation source files (respect package hierarchy)
src/test/resourcesFeeder files, request body templates, Gatling/Logback config
pom.xmlMaven project descriptor
target/Generated test results
Windows users: do not place the bundle in the Programs folder (permission issues). Use 7-zip to extract the archive — the built-in Windows zip tool will not work correctly.

IDE Setup

IntelliJ IDEA Community Edition supports Java, Kotlin, Maven, and Gradle out of the box. Open the project folder and IntelliJ will detect the build tool automatically.For Scala with sbt, install the Scala plugin from the JetBrains Marketplace. After installing it, increase the Scala compiler stack size to avoid StackOverflowError during compilation:
  1. Go to Settings → Build, Execution, Deployment → Compiler → Scala Compiler.
  2. Add -Xss100M to the compiler options.

Next Steps

First Simulation

Write your first end-to-end simulation step by step with full explanations.

Low-Code Tools

Import a Postman collection or use the browser recorder to generate simulations automatically.

Build docs developers (and LLMs) love