How to create realistic (and meaningful) load tests by parameterizing Gatling scripts using feeders and regular expression extractors.
This blog post is a tutorial for writing Gatling scripts to load test web applications. It follows our first getting started with Gatling simulation scripts article.
The application under test is a fake e-commerce. We are going to create a Virtual User that browses articles in this shop. To create a dynamic load test we will cover several topics:
Feeders to inject values taken from a static file, Regular Expression extractors to extract value(s) from a server response and inject it in subsequent requests, Cookies management.
Getting started with Gatling simulation scripts. This tutorial explains everything you need to know in order to run your first load test with Gatling.
Gatling is a load testing tool for measuring the performance of web applications. As such, it supports the following protocols:
HTTP, WebSockets, Server-sent events. Other protocols are also supported either by Gatling itself (like JMS) or by community plugins.
Gatling load testing scenarios are defined in code, more specifically using a specific DSL. This guide focuses on the basics of writing a simulation to test an HTTP application: OctoPerf’s sample PetStore.
Kraken 2.0 release notes: multi-injectors load testing and features list. Video tutorials. Roadmap for the upcoming releases.
Kraken is a load testing IDE based on Gatling.
As such, Kraken provides a complete development environment to software programmers and load testers that seek to make the most out of Gatling:
A code editor to create and update .scala Gatling simulations with autocomplete suggestions and code snippets, Simulations debugging and comparison with HAR imports, Load tests analysis with aggregated data in InfluxDb displayed in comprehensive reports generated with Grafana.
How to handle Server Sent Events in a Fullstack Reactive web application based on Spring WebFlux and Angular.
Reactive programming is a programming paradigm aimed at maintaining overall coherence by propagating changes from a reactive source (modification of a variable, user input, etc.) to elements dependent on this source.
Reactive applications are more and more important today as they are:
Highly Available: the system must respond quickly no matter what, Resilient: the system must always remain available, even in case of error or even if it is overloaded, Message Oriented: the system uses asynchronous messages.
A step by step guide to deploying the InfluxDB/Telegraf/Grafana stack on Kubernetes. How to map configuration files, data folders, and environment variables?
This article follows our first blog post related to Kraken’s deployment on Kubernetes. It is a step by step guide explaining how to deploy the InfluxDb/Telegraf/Grafana stack used to generate load testing reports on Kraken.
More importantly we will se:
How to map a configuration file using a ConfigMap resource? How to map sensitive environment variables using the Secrets object? How to use Kompose to generate declarative K8S configuration?
A step by step guide to deploying an Angular frontend behind an NGinx Ingress on Kubernetes. K8S installation, Ingress controller deployment and frontend application proxying.
Kraken is a load testing solution currently deployed on Docker. In order to use several injectors (Gatling) while running a load test, its next version might rely on Kubernetes.
Kubernetes (commonly referred to as “K8s”) is an open source system that aims to provide a platform for automating the deployment, scalability and implementation of application containers on server clusters. It works with a variety of container technologies, and is often used with Docker.
How to create an Angular 8 project with multiple applications and libraries? This guide uses the Kraken Load Testing IDE front as an Angular 8 workspace example.
OctoPerf’s Load Testing IDE (Kraken) is an application with two frontends:
The Administration UI used to manage Docker containers and images, The Gatling UI to debug and execute load tests with Gatling. Both UI are based on Angular 8 and share many components, CSS and external library dependencies.
This blog post is a guide for every developer that would like to create an Angular Workspace with several applications and libraries.
How to create a multi-modules Maven project in the Gradle world? This guide uses the Kraken project as an example to help you get started with complex Gradle builds.
The creation of a Load Testing IDE (Kraken) was for me the opportunity to check on new technologies:
I wanted to try another build solution for my Java backends. I used Maven for several years, both on OctoPerf and in my previous work experiences. Moving from Maven to Gradle is not necessarily easy, as the concepts involved are different
This blog post is a guide for every developer with a Maven background that would like to give a try to Gradle (version 5.
How a proof of concept on some technologies became a full-featured project: Kraken, the load and performance testing IDE.
About 8 months back, after a few years working on the same technology stack used for OctoPerf, I wanted to check if we should follow the latest trends: micro-services and reactive programming.
Re-building OctoPerf with other technologies, just for a POC, seemed way too long. After all, the development of the frontend alone took me a few years, not to mention the backend … OctoPerf comes with really advanced features regarding load-testing!