The secret to peak digital performance: soak, stress and spike tests
You want to make sure that your shiny new site is fit for purpose, and that your users will have the best possible experience. You also want to make sure that your new site can keep pace with demand and will remain consistent as the user count rises. And you want to ensure - while no infrastructure is infallible – that yours can cope with outages and extreme scenarios without unduly affecting your users.
Performance testing refers to several different non-functional test practices that overlap in their use of tools and techniques, but all approach similar usability concerns from different perspectives.
Performance Testing Methodology
There’s no hard or fast rule but, generally, performance testing concerns itself with the usability and reliability of a site or service in its ideal state, while load testing is a subset that looks at the infrastructure supporting that product to see how it copes when multiple interactions occur simultaneously.
There are other subsets in the mix as well; methodologies that are intended to target specific use cases and may be more, or less, relevant depending on your sites intended audience:
- Stress testing seeks to find the absolute upper limits of your site’s capacity before it fails.
- Spike testing specifically looks at the site’s ability to weather extreme increases in activity and recover from high load events.
- Soak testing determines a sites long term stability and ensures that memory reclamation and other “housekeeping” tasks are performed correctly.
There may be overlap with other non-functional areas like security and compatibility testing. Some applications may also need to consider endurance, volume, scalability, and more.
What to consider…
Unlike security and accessibility testing – where the acceptable standard is often determined by the recommendations of third parties – performance and load testing programs require targets to be set by the development team prior to the test cycle. These targets must be specific, measurable metrics that are explicitly linked to the client’s requirements.
As with all testing activities, it’s important to decide early on what you want to learn from your investigation and define your parameters; the more specific the planning, the more relevant the results will be. Do you already understand your visitor count? Do you need to run projections based on similar offerings in the marketplace? Once you have an idea of how many users your site or service will need to accommodate, you’ll also need to try and predict how they’ll access them.
Do you provide a business service that your users will all log on to at 9am? Is it a social platform that’ll get hit hard in Love Island advert breaks? What about location; are your users spread across multiple time zones; or all clustered together? How will that affect the load on your site over a typical day?
Understanding these factors, will allow you to plan for effective testing that addresses the real-world requirements of your new site and will produce results that are relevant and deliver either confidence in the infrastructure or a clear path forward where changes are necessary.
Good quality, relevant, results not only confirm your site’s ability to perform effectively today but can also inform how your site’s supporting infrastructure scales over many years.
Performance testing aims to ensure that your site is certified for its debut, and that it will continue to be stable, responsive, and available well into the future. But, ultimately, any phase of testing will only answer the questions you decide to ask, and performance testing is no different.
Safeguarding proper planning as part of the test process ensures that the real-world demand on your shiny new site is anticipated, understood, and planned for. It’s important – amidst all the technical considerations required by such an undertaking – that the real-world analogues are clear. Retail sites need to understand what load sales events will generate and ensure that their scalability means they can survive Black Friday and keep the orders rolling in. Public facing sites should have contingency for increased traffic due to news events, public announcements, new marketing campaigns, recruitment drives and so on. Understanding what you want to achieve now, as well as your road map for the months and years to come, can ensure that your testing strategy provides you with a strong foundation for future success.
Of course, the future is difficult to predict, and while full in-depth assessment of all the technical intricacies of your new site may not be required every year, a performance review of the needs and expectations of your customers and clients should be undertaken at least annually. This may be a simple review of current user numbers and site throughput – an analysis undertaken purely ‘on paper’. Or it may entail a targeted, relevant performance test cycle – for example, looking at only stress testing, rather than incorporating a repeated soak test where demand on the site may have evolved but the infrastructure has not changed.
Not all changes or updates to a site require performance testing, but regular analysis with your development and deployment partners can ensure that your site stays performant, accessible and enjoyable to use for years to come.
If you're interested to learn about how we can ensure your website or application is in the best shape possible - get in contact - we'd love to hear from you.