Gatling Fundamentals for Stress Testing APIs - Scala (Udemy.com)
Learn the open source Gatling tool and how to stress and load test any API
Created by: James Willett
Last updated July 2025
Our take
Based on the ratings of 2,241 students, a sample of their written reviews and the syllabus, as the course stood in July 2025. No course pays to be reviewed.
This is a focused, short course on Gatling, the open-source Scala-based load testing tool, taught by principal engineer James Willett. At 4.6 hours across 49 lectures, it walks through installing Gatling, using the Recorder, writing scripts from scratch, adding feeders, designing load simulations, and running everything from the command line and CI tools like Jenkins. The course was rebuilt in 2022 for Gatling 3.8 and touched up again in July 2025. No Scala background is required; the audience is QA engineers and developers new to Gatling or switching from JMeter or LoadRunner.
Reviewers like the pacing and James's voice, and one review mentions he answers Q&A questions fast. Multiple students call it a solid fundamentals course but flag real gaps: no coverage of parallel execution, advanced load model design, server tuning under high load, or deeper report analysis, and one wanted Grafana integration for monitoring results. One reviewer found the Maven project setup missing, another called the CI material slightly dated, and one more noted the demo repo had drifted from what the lectures show. One reviewer also flagged repeated boilerplate typing across lectures as tedious.
At 4.3 stars across 2241 ratings, most students rate it 4 or 5, and it earns its place as a quick, practical on-ramp rather than a deep dive. It suits someone who wants working Gatling scripts fast and can look up advanced scenarios elsewhere once the basics click. Skip it if you already know Gatling and want coverage of complex, production-scale load modeling; this one stays at the fundamentals level on purpose.
Pros
- Walks through many complete Gatling scripts from scratch, building skills step by step
- Covers running tests via Maven and Gradle plus CI tools like Jenkins and Travis
- James Willett answers Q&A questions quickly, one reviewer says
- No Scala experience needed since Gatling's DSL handles the syntax
Cons
- Skips advanced topics: parallel execution, complex load models, deep report analysis
- A few lectures repeat the same boilerplate code typing, one reviewer found this tedious
- One 2026 reviewer found the demo repo had drifted from what the course shows
Marketed as All Levels, but really suits QA folks and developers new to Gatling with basic coding experience.
What you will learn
- Installation and configuration of Gatling from scratch, with no prior knowledge required
- Using the Gatling Recorder to model the behaviour of your existing application directly into a Gatling script
- Setup your development environment for writing your own Gatling load test scripts
- Learn the layout template of a Gatling script and what to add into each section
- Explore and write core Gatling script functionality such as adding loops, refactoring code to objects, adding test data through feeders and much more
- Design load test scenarios in your Gatling script, and learn how to execute them from the command line
- Use build tools like Maven to execute Gatling scripts, and watch your performance test execution in real-time through the command line in Gatling
- Access and analyse the test reports generated by Gatling’s built in reporting tools
Course content
12 sections · 49 lectures · 4.6 hours of video 3 quizzes
- 1Course Overview & Housekeeping 1 free preview1 lecture · 3 min
- 2Introduction to Gatling1 lecture · 5 min
- 3Gatling Installation & Using the Gatling Recorder 1 free preview5 lectures · 23 min
- 4Dependency Installation & Gatling Project Configuration 1 free preview5 lectures · 20 min
- 5Gatling Script Fundamentals 2 free previews9 lectures · 1 hour
- 6Gatling Feeders 1 free preview5 lectures · 46 min
- 7Load Simulation Design4 lectures · 20 min
- 8Execution from the Command Line3 lectures · 16 min
- 9Putting it all Together3 lectures · 28 min
- 10Test Monitoring & Reporting3 lectures · 9 min
- 11Gatling with Continuous Integration Tools9 lectures · 43 min
- 12Conclusion & Next Steps1 lecture · 2 min
Who it is for
The instructor says it suits
- QA Engineers and Programmers with little or no experience with Gatling
- Anyone using an alternative load testing tool like JMeter, LoadRunner or NeoLoad that wants to learn a new tool
What you need before you start
- Some basic experience in any computer programming language will be helpful
- Experience with Scala is a plus, although not required
- Previous experience of any performance testing tool will be a help, but again not required
How it compares
Against the other 34 rated Udemy courses in Scala on CourseDuck:
- Rating4.3 out of 5higher than 47% of them
- Reviews2,241#4 of 35 by number of reviews
- Length4.6 hoursshorter than 70% of them
- Last updatedJuly 2025more recently than 88% of them
Course Description
UPDATE - AUGUST 2022 -COURSE HAS BEEN COMPLETELY RE-RECORDED FROM SCRATCH FOR THE LATEST VERSION OF GATLING - V3.8
In this course, you will learn the fundamentals of using the Gatling stress testing tool - an extremely powerful, open-source performance testing tool in heavy demand in the software industry today. Write many Gatling scripts from scratch against a target application included with this course, all with guidance.
Why Gatling?:
Extremely powerful and flexible performance testing solution
An open-source tool, so no cost to use it
Performance testers with Gatling experience are in high demand - yet few Engineers know this tool
Why this course?:
Learn all aspects of Gatling including:
Gatling Installation & Configuration, both standalone and in an IDE
Using the Recorder to record your user journey
Writing Gatling load test scripts,
Analyzing test results
See how to write many scripts from scratch to become familiar with the process, each script teaches a new concept
Run tests from the command line, using popular build tools like Maven and Gradle
Learn how to run Gatling tests in a CI environment with Jenkins and Travis CI
Although Gatling is pure Scala code, I will show you why the excellent Gatling DSL means that no knowledge of Scala is required to succeed with Gatling
Resources for learning Gatling are scarce. It can be overwhelming and intimidating trying to learn this tool on your own from scratch. This course is designed to address that
What are the benefits of taking this course?:
Have fun whilst learning a valuable skill & tool
Command a higher salary
Improve your skills and offering as a developer and tester
This course is for any Developer or Quality Engineer that wants to learn how to use Gatling for adding performance and stress tests to their test suite.
No prior knowledge of performance testing or software development is required, as I will be walking you through the entire process. However, any prior knowledge or experience that you do have in these domains will be of benefit and will naturally aid your learning.
If you want to add an awesome, fully open source performance testing tool that is in high demand across a wide range of software development roles to your skillset, this is the course for you.
Instructor Details
- 4.3 Rating
2,241 Reviews
James Willett
Hey, my name is James! I am a principal engineer with over 15 years of experience in the software industry with a heavy focus on automation and performance testing.
I have a great passion for teaching through online tutorials, and am excited to share some of my technical knowledge through that medium on Udemy.
More courses by James Willett
More Scala courses
Advanced Scala and Functional Programming (2024)
4.7 (3,560 Reviews)
Provider: Udemy
Time: 13.2h
$39.99
Reviews
By Petro Pikh on 1/3/2024
Good course, but does not cover all areas. It does not contain anything about tuning test server(in case of high load), also nothing about run few Gatling servers using the same destination host. Not much explanation about Gatling report analyze. But in general very good course.
By Colin Watts on 1/25/2023
Course content was largely very good, informative and well structured and delivered. The only reason I'm not giving 5 stars is I felt that there was too much repetition, where we watched the instructor type the same skeleton code over and over in many of the lectures which felt very unnecessary.
By Raghvendra Gupta on 12/16/2022
A very basic course, just touches upon bare minimum concepts to get started. A lot of things like parallel execution, advanced load model designing etc are not covered. But good for getting a head start on Gatling, and then student can learn advanced topics as per their needs.
By Michael G on 11/1/2022
Course where the material was up-to-date and worked as expected. Examples were clear, easy to follow, and also addressed CI as a starter for 10 - perfect intro. It would have been great if it included a quick "How to split into multiple files and run overall" - if that makes sense. i.e. videogamedb/commandline/* feeders/* etc, which while obviously meaningless in this precise context, would be a quick how to achieve for testing whereby you split your testing logically for various services Also, great pricing for the content. So thanks :)
By Anonymized User on 10/10/2021
It was a good course. Covering the most importants cases of use of the tool Gatling. But, as a problem, I can say that the course had a lot of time wasted because of moments when James rewrited the same code, with few modifications. Besides that, the last section is almost useless, because was made to cover topics within a old version of Gatling. This part I think is to blame Udemy, that not allow the creators to archive videos, without deleting.
By Gerard Kmieć on 12/8/2020
Great course! There are only a few things to improve - one question in the quiz is from a future lecture and the basic sample code has an import from a package that is created later, so the first code task doesn't compile. To complete the course in 100%, you also need to watch Old Recordings, which in my opinion can be easily skipped. But besides that, the Gatling material is explained easily and comprehensively. Would recommend!
By Krisztián Romek on 11/14/2020
Very useful course with lots of information, but with varying volume levels. The non-intro videos are much too quieter, like, my speakers are already on 100% volume and I still need to increase the volume on the hardware, that's so frustrating. Sometimes they also feel like the instructor is mumbling. And if I forget to lower back the volume, the next intro video is screamingly loud. I'd much prefer a a constant volume level close to other instructors' videos or YouTube vids, whatever. I know that Windows 10 has volume normalization, but every time I accidentally leave it on it can quickly annoy me when watching music videos, which naturally vary in volume levels.
By Anonymized User on 11/2/2020
Well structured content. Easy to understand and implement. Helped me clear Gatling concepts. I would have rated it 5 if the old recordings were not part of the course. I actually had to go through them to get the course marked as completed. Please remove the old recordings ( Section 13), it’s not needed.
By Honey Gupta on 9/10/2020
This is my first learning for Gatling and I really liked this course. The best part is the way, it's been explained. I really liked it and I would ask other mentors also to explain in the same way. Other thing which I like most is the last part where all the details are explained again in a individual videos. Superb. Keep the good work. Thank you so much.
By Jovica Spasic on 6/18/2019
This courses has been very useful for me to get me started with Gatling. Examples are very useful and applicable at my workplace. Step by step approach is engaging and very informative. Support from the instructor was prompt and useful. I had experience some issues with installation of support applications but overall it was quite positive experience.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 86 / 100






