Stress Testing APIs with Gatling and Scala Online Course
Stress Testing APIs with Gatling and Scala Online Course
This online course will guide you through mastering Gatling, an open-source tool for load-testing web applications. Starting with Gatling installation, you will learn to use the Gatling Recorder to capture user journeys and generate scripts effortlessly. You’ll execute your first Gatling script and dive into testing with response code checks, data extraction, and debugging session variables. The course covers advanced topics like looping HTTP calls, authentication, and working with CSV feeders. You will also explore load simulations, running Gatling from the command line, and configuring runtime parameters. By the end, you will be equipped to perform effective load tests, monitor test executions, and integrate Gatling into CI/CD pipelines for optimized performance.
Key Benefits
- Develop core Gatling script functionality from the ground up, building a strong foundation in load testing.
- Design and implement comprehensive load-test scenarios within your Gatling scripts, and execute them efficiently from the command line.
- Leverage Gatling's robust Domain Specific Language (DSL), which simplifies the testing process and removes the requirement for in-depth Scala knowledge, ensuring an accessible approach to successful load testing.
Target Audience
This course is designed for a wide range of individuals, including quality assurance engineers seeking to expand their expertise, regardless of prior experience with Gatling. It is also ideal for programmers interested in exploring load testing but who may not be familiar with Gatling. Furthermore, if you are currently using other load-testing tools like JMeter, LoadRunner, or NeoLoad and wish to transition to a new tool, this course will provide you with the knowledge and skills to become proficient in Gatling.
Learning Objectives
- Install and configure Gatling for both standalone use and within an Integrated Development Environment (IDE).
- Set up your development environment to efficiently write Gatling load-testing scripts.
- Master the process of refactoring Gatling code to ensure reusability across different testing scenarios.
- Execute tests from the command line using build tools such as Maven and Gradle.
- Monitor the execution of tests directly from the command line within Gatling.
- Integrate Gatling tests into a Continuous Integration (CI) pipeline using Jenkins and Travis CI for seamless automation.
Course Outline
The Stress Testing APIs with Gatling and Scala Exam covers the following topics -
Module 1 - Getting Started with Gatling
- Introduction to Gatling and its capabilities.
Module 2 - Installing Gatling and Using the Recorder
- Download and install Gatling from the official website.
- Overview of the Gatling Recorder tool.
- Record a user journey and convert it into a Gatling script.
- Execute your first Gatling script.
Module 3 - Setting Up Dependencies and Configuring Gatling Projects
- Introduction to the application being tested.
- Required prerequisites for Gatling development.
- How to configure your Gatling project environment.
- Write your first Gatling script.
Module 4 - Understanding Gatling Script Essentials
- Adding pause time between requests.
- Validating response codes.
- Verifying response body content.
- Extracting data from responses.
- Debugging session variables.
- Reusing code in Gatling scripts.
- Looping through HTTP requests.
- Handling authentication in Gatling.
Module 5 - Using Gatling Feeders
- Working with CSV feeders for dynamic data input.
- Creating basic and advanced custom feeders.
- Using templating files in Gatling for data management.
Module 6 - Designing Load Simulations
- Implementing basic load simulations.
- Creating ramp-up user load simulations.
- Performing fixed-duration load testing.
Module 7 - Running Gatling Tests from the Command Line
- Executing Gatling tests via the command line interface.
- Configuring runtime parameters for tests.
Module 8 - Bringing It All Together
- Challenge template for hands-on practice.
- Solution for the final challenge.
Module 9 - Test Execution Monitoring and Reporting
- Monitoring the execution of tests in real-time.
- Generating and analyzing Gatling test result reports.
Module 10 - Integrating Gatling with Continuous Integration Tools
- Overview of integrating Gatling with CI tools.
- Setting up GitHub repositories for Gatling tests.
- Configuring Jenkins for Gatling tests.
- Running your first Gatling test in Jenkins.
- Triggering new tests from Jenkins.
- Using Jenkins parameters to control Gatling tests.
- Implementing assertions to fail Jenkins builds.
- Integrating Gatling with Travis CI.
- Using environment variables in Travis CI for Gatling testing.