JetGatling provides a scenario DSL and package with Gatling, make the use of Gatling without the trouble of writing the DSL.
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.
- Assuming you are familiar with the usage of Docker
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.
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
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.
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
.
For other parameters, use the following command to check the details.
docker run --rm scw1109/jet-gatling -h
See developer.md
The license is Apache 2.0, see LICENSE-2.0.txt