Skip to content

scw1109/jet-gatling-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JetGatling: gatling load testing make easy

Docker Stars Docker Pulls Docker Automated build

License


Overview

JetGatling provides a scenario DSL and package with Gatling, make the use of Gatling without the trouble of writing the DSL.

Background

Gatling is a great load testing tool. However it requires one to write the scenario in DSL to start a load testing.

This is not as convenient as using simple benchmarking tool like ab or wrk.

Hence, JetGatling provides a scenario DSL which covers simple common use cases, make the usage of Gatling as easy as ab.

Usage

  • Assuming you are familiar with the usage of Docker

Run a simple load test (Fixed RPS mode)

docker run --rm scw1109/jet-gatling -r 5 -d 30 -u "https://google.com"

This will start a test that running 5 RPS (requests per second) with a 30 seconds duration against google.com

Note that no matter how long the response take, the tool will send 5 requests in each second.

Run a simple load test (Fixed concurrent mode)

docker run --rm scw1109/jet-gatling -c 5 -d 30 -u "https://google.com"

This will start a test that running 5 concurrent clients with a 30 seconds duration against google.com

Note that each client will send next request as soon as it receive a response. Which acts more like ab

To keep the generated report

Gatling report is generated under path /jet-gatling/results in the docker. To keep the report in host machine, we could use volume function of docker.

docker run --rm -v /tmp/jet-gatling/results:/jet-gatling/results scw1109/jet-gatling -r 5 -d 30 -u "https://google.com"

This command will keep the Gatling reports under /tmp/jet-gatling/results of the host machine.

Providing user files

JetGaling allows user to provide input file for some function. For example, to provide multiple paths for the load testing.

In order to provide the file to JetGatling, one should use volume to allow the docker runtime to see the file.

docker run --rm -v /tmp/user-files:/jet-gatling/user-files -r 5 -d 30 -u "https://google.com" -p "/jet-gatling/path"

This command will read the path file under /tmp/jet-gatling/user-files.

Show usage

For other parameters, use the following command to check the details.

docker run --rm scw1109/jet-gatling -h

Developer Guide

See developer.md

License

The license is Apache 2.0, see LICENSE-2.0.txt