# Awesome Gatling

A curated collection of resources covering all aspects of load testing using Gatling and related stuff: plugins, integrations, testing techniques, DevOps practices, etc. > Gatling is an open-source load and performance testing framework based on Scala, Akka and Netty.

## Contents

- Official Resources
- Getting Started
- Tutorials
- Distributed Testing
- Tools
  - Plugins
  - Frameworks
  - Reporting
  - Sandbox
  - Miscellaneous
- CI
- Trainings & Courses
- Videos
  - Talks
  - Video Tutorials
- Community
- Related
  - Awesome Lists
  - Other

## Official Resources

- Homepage
  - Gatling - Open-source version.
  - Gatling Enterprise - Enterprise version (formerly known as Gatling FrontLine), with advanced analytics and integrations.
- Documentation
- Source code

## Getting Started

- Load testing with Gatling.io
- A first look at Gatling, a DSL based load test tool
- Gatling: Take your performance tests to the next level
- Load Testing with Gatling. The Complete Guide
- Performance testing with Gatling

## Tutorials

- Load testing gRPC services with Gatling
- Creating a custom Gatling protocol for AWS Lambda
- Load testing ZeroMQ with a custom DSL for Gatling

## Distributed Testing

- Scaling out with Gatling - Recipe to use several Gatling instances hosted using multiple machines from official Gatling documentation.
- Distributed load testing with Gatling and Kubernetes
- Gatling – Scaling Out Your Load Tests
- Distributed Gatling - Solution to run Gatling simulation tests in a distributed/cluster environment.
- gatling-operator - Automating distributed Gatling load testing using Kubernetes operator.

## Tools

### Plugins

- gatling-sbt-plugin - Gatling SBT plugin to integrate Gatling with SBT, allowing to use Gatling as a testing framework.
- gatling-build-plugin - An SBT plugin to share common settings across Gatling’s projects’ builds.
- gatling-maven-plugin - Gatling Maven Extensions.
- gatling-gradle-plugin - Gatling plugin for Gradle.
- gatling-remote-sbt - Remote execution plugin for Gatling load tests.
- gatling-junitrunner - JUnit wrapper around Gatling simulations.
- gatling-grpc - Gatling load test plugin for gRPC.
- gatling-aws - Gatling custom protocol for AWS Lambda.
- gatling-xmpp-protocol - XMPP protocol for stress test XMPP servers with Gatling.
- gatling-jwt - An extension to Gatling 2.0 to help make JWT-signed requests.
- gatling-mqtt - A Gatling plugin for stress testing MQTT.
- gatling-kafka - A Gatling plugin for stress testing Apache Kafka protocol.
- gatling-kafka-plugin - Plugin for support Kafka in Gatling.
- gatling-amqp-plugin - Plugin for support performance testing with AMQP in Gatling (3.2.x).
- gatling-jdbc-plugin - Simple Gatling plugin for JDBC support.
- gatling-picatinny - Library with a bunch of useful functions that extend Gatling DSL.
- gatling-sql - Gatling extension for JDBC or Spark Thrift Server stress testing.
- gatling-tcp-extensions - TCP extensions for Gatling.
- gatling-thrift - Gatling third party plugin for Apache Thrift.
- gatling-bolt - Support Neo4j Bolt protocol for Gatling.
- gatling-zeromq - A Gatling stress test plugin for ZeroMQ protocol.
- gatling-dubbo - A Gatling plugin for running load tests on Apache Dubbo.
- gatling-cql - Gatling support for Apache Cassandra CQL.

### Frameworks

- Kraken - Load testing IDE based on Gatling by OctoPerf.
- Karate Gatling - Re-use Karate API-tests as performance tests executed by Gatling.
- Taurus - Gatling Executor in Taurus framework.
- Carrier - Continuous test execution platform with ability to perform load testing using customized JMeter and Gatling containers.

### Reporting

- gatling-report - Parse Gatling simulation.log files to output CSV stats or build HTML reports with Plotly charts.
- gatling2allure - Convert Gatling log to Allure report.

### Sandbox

- gatling-scaffold - Base for load test project using Gatling, InfluxDB and Grafana.
- perfiz - A dockerised API performance test setup based on Gatling with Grafana dashboards and Prometheus monitoring.

### Miscellaneous

- dakiya - Convert Postman collections to Gatling scripts.
- gatling.g8 - Giter8 template for Gatling.
- gatling-template.g8 - A Giter8 template for Gatling performance test project.

## CI

- Gatling Jenkins Plugin - Jenkins plugin for Gatling.
- run-gatling - GitHub Action to easily integrate Gatling performance tests to GitHub workflows.

## Trainings & Courses

- Gatling Academy
- Gatling Courses - By Udemy.
- Performance Test Automation 101: Gatling, Lighthouse, & Jenkins - By Educative.

## Videos

### Talks

- Load Testing Done Right with Gatling - Stéphane Landelle @ Voxxed Days Belgrade 2015.
- Load Testing Crash Course with Gatling - Stéphane Landelle @ Devoxx Belgium 2022.

### Video Tutorials

- Performance Testing with Gatling - Tutorial series by Tomi Tiihonen.
- Gatling Tutorials for Beginners - Tutorial series by James Willett.

## Community

- Gatling Community
- `gatling` on Stack Overflow
- `@GatlingTool` on Twitter

## Related

### Awesome Lists

- Awesome Software Quality - A list of free software testing and verification resources.
- Awesome Testing - A curated list of testing resources.
- Awesome JMeter - Open-source load testing and performance measurement tool, written in Java.
- Awesome Tsung - Open-source multi-protocol distributed load testing tool, developed in Erlang.
- Awesome k6 - Open-source, developer-centric performance monitoring and load testing solution.
- Awesome Locust - Open-source scalable load testing framework written in Python.

### Other

- How They Load Test - A curated collection of publicly available resources on how companies around the world perform load testing.
- Load Testing Toolkit - Collection of open-source tools for debugging, benchmarking, load and stress testing your code or services.

## Contributing

Contributions are welcome!
Please take a look at the CONTRIBUTING guidelines first.