Load testing of aviobook application in AWS
Aviovision is a Belgian company focused on developing high-quality, innovative solutions for aviation. For example, Aviovision developed a digital version of the flight book, “Aviobook,” which can be used easily on a tablet and is fully integrated with airline systems. A flight book contains all the manuals and routes pilots need before they are allowed to take off. With the Aviobook app, pilots can quickly and easily gather all required documentation for their flight.
Because of their innovative character, they ended up working with Refleqt. At Elaut, they were in the middle of taking their first steps in their digitalization journey. They wanted a platform where you could livestream games and play arcade machines from your smartphone—in other words, control a claw machine from your couch to win a prize.
Customer need
Aviovision was already active in the European market, focusing on cargo flights with a volume of around 30,000 flights per week. With their planned rollout to the US market, this number would double to 60,000 flights per week.
This raised one key question for Aviovision: can the platform handle a doubling of the volume? Can the rollout to the US market happen without issues for their own application? They needed a performance test set capable of monitoring how the platform behaves under increased load.
There was also a need for automated performance tests. Aviovision was not used to running regular load tests on their platform, which meant performance bottlenecks in new features were identified late.
At the same time, this assignment created an opportunity for a historical catch-up of the application. The Aviobook application had already been live for two years, making it the ideal moment to uncover and address any potential future issues in the platform.
Refleqt solution + deliverables
Refleqt’s solution consisted of several elements:
Technical analysis
Based on a technical analysis, we mapped the API landscape of the app and the admin website. This gave us clear insight into the network traffic and allowed us to understand the Aviovision application in detail. With this detailed view of the platform, Refleqt was able to quickly design the right performance test set. After the analysis, Refleqt shared targeted recommendations and potential optimizations with the development team.
Performance testing
To set up the performance tests, we used the OpenAPI documentation together with an open-source Scala template. Combined with Swagger Codegen, we generated a Scala library as an artifact. This library was imported into Gatling to run the required load tests. A load generator was then configured on AWS using Docker.
For logging and monitoring during the performance tests, Gatling was connected to a Grafana dashboard via InfluxDB. This made it possible to visualize real-time results during load testing so that potential issues or errors could be identified quickly by the development team. The dashboard was used to monitor the health of the platform and showed, in real time:
- Number of hits per minute
- Response times
- Error percentages
Execution
The performance tests were executed iteratively and in continuous collaboration with the Aviobook technical team. This way, the root causes of negative test results could always be investigated.
Tools & technologies
- Technical analysis: Charles (proxy server)
- Performance testing: Gatling, Scala, Maven, OpenAPI, Swagger Codegen, Scala Build Tool
- Execution & monitoring: Grafana, InfluxDB, Kibana, AWS, Docker
Result
Aviovision responded very positively to Refleqt’s work. The technical analysis revealed several bottlenecks in the platform, which the Aviovision development team then addressed and resolved.
Thanks to the strong results from the performance testing, the Aviobook app is now ready for increased traffic. The platform can handle a doubling of the load without expected issues.
Refleqt also fully trained Aviovision’s QA team through a technical handover, enabling them to continue using and extending the performance test setup after the engagement.
Related cases
We help organizations gain control over quality and performance with solutions that match their current maturity as well as their future growth.
Livecadia: latency testen of remote arcade games
Since 1959, Elaut Group has been active in the amusement games industry. Most of the machines you see at fairs and in arcades were likely designed ...
View project
Venue Management mobile and web platform
Mobile app to support the digitalization and automation of volunteer work and venue management in the entertainment sector.
View project
Milan Meuleman
Business development & sales
Contact Refleqt today
Would you like more control over software quality, test automation, or performance? We are happy to explore together how we can support your team with an approach that works in practice.