2018 was an exciting year for software as a whole, with many performance related new stories coming to the front and center. The good news for the industry is that there are many emerging trends to take advantage of that will take software performance to the next level. In this post, we have highlighted the 5 major trends we expect to shape the software development industry in 2019.
1. Cloud Load Testing Will Become Ubiquitous
Cloud adoption continues to rise, and most companies are at least experimenting with load testing in the cloud. Load testing in the cloud with AWS or Azure offers a number of benefits over traditional load testing with on-premise load injectors:
- Test with increased load for compelling events like sales or product launches
- Test for short periods of time, with ability for short term rentals
- Test in minutes, with lightning fast server creation
- Create servers of various configurations with only a few clicks
- Reduce overhead and maintenance required on your load test infrastructure
- Test from around the world with support for various hosting regions
- Test using browsers using Browser Based Load testing tools
In our experience, consumer facing applications such as ecommerce sites, streaming applications, and travel bookings have been the earliest to adopt cloud load testing. Teams testing apps with increased security concerns in the government, healthcare, and financial services arenas have been slower to adopt cloud load testing. However, cloud adoption is poised to take off in these sectors in 2019, as providers tailor their offerings to the specific challenges of these industries.
2. Browser Based Load Testing Will Overtake Protocol Testing for Web Apps
Though Load Testing is top of mind for almost every company, we find test that many large companies still go live to find major performance issues after the fact. The major reasons customers site for not catching these bugs sooner are:
- Tests are too difficult to create, so they don’t have enough (if any) of them
- Tests are to hard to run or cost too much to run, so they don’t run enough of them
- Tests don’t stress the application in the same way that real users do
Browser based load testing has started to reshape the load testing industry, offering benefits of easier to write tests that can be executed quickly in the cloud. Headless technology has allowed these tests to be executed at a feasible cost. Most importantly, these tests simulate real user load by testing the entire stack, and measuring the browser response time rather than protocol level metrics.
3. A “Culture of Performance” Will Reign Supreme
Companies like Netflix have been all in on engineering with performance in mind for many years. However, about half of companies are continuing to work under a model where most performance testing is executed by a separate Test Center of Excellence.
As agile and devops adoption increases, it will become increasingly important to remove obstacles that will slow teams down. Relying on outside teams to execute load tests will mean that teams need to either slow down to get their app tested or forgo critical load testing altogether.
Beyond impacting the develop cadence, developing code without specific performance criteria in mind means developers may overlook these requirements entirely. Integrating performance SLA’s into user stories is one example of a way teams can ensure that each feature built will meet customers’ performance expectations.
4. Open Source Load Testing Tools Will Continue to Gain Market Share
While HP LoadRunner has been the most popular tool in the industry for many years, open source tools like JMeter are gaining more traction in the past 2-3 years. The number of companies looking for a LoadRunner alternative is growing, as benefits like reduced cost, increased customizability, and developer friendliness push out the legacy load testing tools from HP.
One of the main hesitations to using open source load testing tools is the need to test non-web protocols such as Citrix and SAP GUI. As these protocols continue to be sunset by their creators, the emphasis on tools that can test non-web protocols will reach an all time low. Some stats from Wipro show that non-web protocols barely account for 20% of the market today, and we can expect that number to be even lower in 2019.
5. “Shift-Left” Load Testing and “Shift-Right” Load Testing will support the Continuous Load Testing Revolution
As Load Testing moves from the center of excellence to the scrum teams, the testing will migrate to two distinct phases of the cycle:
- “Shift-Left” Load Testing: where developers are responsible for writing simple, smaller scale load tests early in the cycle, using a TDD approach. Tools like ruby-jmeter and k6 will allow developers to write their load tests in a familiar format that can be stored easily with the rest of their code
- “Shift-Right” Load Testing: where testing happens closer to release with operations teams involved closely in executing the test. Cloud load testing will be prevalent in these larger scale, more involved tests. Additionally, connections to monitoring tools like AppDynamics, New Relic, and Dynatrace will be critical to monitor the success of these load tests and be able to quickly make changes based on feedback.
Both of these new approaches to load testing will be critical to success with load testing in the context of Agile and Devops. Testing in the “center” using the Test Center of Excellence will live on, but we predict the role of the Test Center of Excellence will continue to transition to more of an advisory and best practices role, rather than one that focuses on test design and execution.
2019 Will Be an Exciting Year for Software Performance
With so many new trends to look forward to, we see 2019 as a banner year for Software Performance. We look forward to monitoring these trends in detail and reporting back on our predictions on our blog.
We wish you a happy holiday and the best of luck testing in 2019!