Recently, I had the pleasure of presenting in front of a lively crowd at the 2nd annual Quality Jam London event. This was my first time presenting to an audience this size on the topic of Continuous Load Testing, but it was clear that this is a topic of major interest to every software development team.
For those that weren't able to make it over to London for the event, we have included a recording of the presentation here for easy viewing:
https://qasymphony-2.wistia.com/medias/whjhc18aat
For those of you without 54 minutes to spare, the cliff notes of the presentation is as follows:
Problem: A lot has changed in the industry
The software development and testing industry has been changing across the board, but there are 3 majors trends that are pushing a need for a different load testing approach than the legacy, waterfall approach:
- Companies are moving faster than ever with more than 81% of companies releasing code every month or faster
- More people are using apps and online experiences than ever before, with 70% of shopping occurring online
- Expectations for performance have risen higher than ever, with many users leaving after just a second of response time degradation
Solution: Shifting to a Continuous Load Testing Approach
Continuous load testing has a lot of different connotations depending on who you ask, but the main changes in approach I believe are required are:
- Test More Often: many teams today only load test before a major release, but that approach won't cut it in the world of DevOps and Agile, where there are releases happening daily
- Shift the Testing Responsibility: too often, only the performance center of excellence is able to write load tests, the responsibility needs to be distributed out in to the scrum teams and democratized
- Take a risk based approach: make sure to know the areas of your application with the most risk of performance degradation and impact to revenue, and test those scenarios first since you likely can't load test everything every time you do a build
Focus on the Journey, not the Destination
Moving to a continuous testing approach is something that will often take months or years of dedicated focus to achieve. However, the stakes are too high to ignore load testing within the context of your Agile and DevOps transformation. Make sure you are thinking about load testing just like any other development best practice that is integral to the successful delivery of your software.