Skip to content

Load Testing Blog

Decathlon - Case study

Decathlon is a network of innovative retail chains and brands providing enjoyment for all sports people.

At Decathlon, 85,000 of co-workers live a common Purpose on a daily basis: To sustainably make the pleasure and benefits of sport accessible to the many.

Decathlon presently operates in 58 countries in Retail with more than 1654 sport hypermarkets, and in 26 countries with Production.

At Decathlon, innovation is at the heart of all activities: from research to retail, including conception, design, production and logistics. Signed sport teams channel all their energy into developing technical, good-looking and simple products, always at the lowest possible prices.

These products are aimed at all sports enthusiasts, from beginners to experts, and are sold at Decathlon.

Nicolas Zangari
Nicolas Zangari, the digital platform manager at Decathlon was actively looking for better, simpler load testing solutions than legacy tools.
Nicolas had previously heard about OctoPerf during a french testing event called JFTL.
He was looking out for a tool for his project since the RFID API was being redesigned and would soon require testing.

Sharing variables between Virtual Users

Variables, may they be constant or dynamic, are an essential part of load testing.

We already learned how to manipulate these values by extracting and re-injecting them inside one Virtual User.

But what if we need to share these values between several Virtual Users ?

In this blog post, I will show you just how to do that, using the MQ technology.

What is AMQP ?

Advanced Message Queuing Protocol (AMPQ) is an open standard protocol that allows messages exchanges between different systems.

In practice, it lets you store values in queues, values that can be retrieved later by simple calls.

Gatling: Loops, Conditions and Pauses

This blog post is a guide to help you write Gatling scripts in order to load test web applications efficiently. It follows our second Gatling Simulation scripts parameterization article.

We will continue to load test a fake e-commerce, and so we are going to improve our Virtual User to make it browse the store in a more humanly way. To do it we will cover several topics:

  • Loops to make it browse several articles of each category,
  • Conditions to change its behavior depending on dynamic parameters,
  • Pauses to simulate a real user think-time.

We start where the previous blog post ended, with a simulation script that uses a CSV feeder and a Regular Expression extractor to visit dynamic pages of the pet store: Download Sample Script.

SNCF - Case study

Most of you have already recognized the name SNCF, it is obviously one that is hard to miss when you live in France. But for everybody else, allow me to do a quick reminder of what SNCF stands for.

The Société Nationale des Chemins de fer Français (Chemin de fer, literally, 'path of iron', means railway) is France's national state-owned railway company. It operates 32,000 km (20,000 mi) of route and in 2017 had €33.5 billion of sales in 120 countries. The SNCF Group employs more than 260,000 people.

source: Wikipedia

Lately, SNCF's IT strategy could be summarized as follows:

  • Have state-of-the-art, multi-cloud, application execution capabilities,
  • Work as a business partner with hand-picked software vendors to help them grow and learn from a real life use case.

This means re-thinking the strategy in many areas, including performance testing.

Julien Leclere
Julien Leclère is the Head of software factory at SNCF, with a range of 1500 applications.
The factory provides assets to manage the entire application lifecycle. Julien was looking for
a solution that could fit in the factory while still answering to a large variety of requirements.

To help with his task, Julien was assisted by Joaquin De Ibar Aguado who took the role of project manager on the migration to OctoPerf. Joaquin would help integrate OctoPerf in the factory as well as migrate a few key projects as a proof of concept.

OctoPerf 11.7 - Pacing, monitoring, dynatrace and more

This new release of OctoPerf brings a lot of long awaited features. This is all based on your feedback, so make sure to let us know what you would like to see in OctoPerf next!

Of course we have a few plans of our own for the future, but I strongly believe that a good software can only result from a good collaboration between users and developers.

Improvements

Pacing your execution

Throughput

If you ever had to execute a load test campaign you are probably aware that it's not only a question of concurrent users, you also need to define the execution rate of each user.

JMeter provides a Constant throughput timer that is also available in OctoPerf, this way you can define a target hit rate and the timer will increase or decrease to try to maintain this rate:

Throughput

The main problem with this timer is that it is incompatible with anything that influences sub requests like the automatic resources and follow redirects option.

It's also often difficult to translate real business transactions activity to a certain number of hits/s.