6 Tips for Stress Testing for Black Friday

The translation of the article was prepared in anticipation of the start of a new course from OTUS - "Load Testing" .








From the author: And although Black Friday is not coming soon, the tips from this article will definitely be useful to those involved in stress testing.



Black Friday is approaching very quickly. Now is the time to start preparing your website or app for the expected influx of users, just like your competitors are doing.



Below are 6 tips for load testing in general and especially in the context of Black Friday.



1. Start performance testing as early as possible



As the famous proverb says: "He who rises early, God gives to him." The same goes for performance testing. The sooner you start stress testing, the sooner you find bottlenecks and the sooner you can fix them. Make sure everything is ready before it is too late.



As testing tends to shift to the left, more organizations are adopting continuous integration (CI) strategies, continuous development (CD) and continuous testing (CT). By regularly stress testing each time you change code, commit and deploy assemblies, you will find most of the issues before major events like Black Friday. This does not mean that you can not run special tests before Black Friday, but approach them as prepared as possible. It is somewhat reminiscent of shows and performances, where the dress rehearsal is preceded by many other rehearsals.



Taurus is an open source automation tool that integrates load testing systems such as JMeter , The Grinder Gatling , Locust.io and BlazeMeter into CI tools like Jenkins... Follow this link to find out more .







2. Test the entire ecosystem



When preparing your environment for stress testing, test the surrounding infrastructure, software, and the application itself. This also includes communications hardware, databases, networks, and so on. By making the test environment as production-like as possible, you make the test more accurate, thereby increasing the number of bottlenecks discovered on time, and reducing the risk of unpleasant surprises during Black Friday peaks.





3. Monitor backend metrics during testing



Load testing allows you to monitor and analyze your performance KPIs (Key Performance Indicators), such as response time and latency, and the correlations between them. But it’s also important to look at key KPIs, such as cache hits and database queries, look at the error log for exceptions, as well as standard hardware specifications, such as CPU / memory / network load and automatic scaling status.



Various solutions expand the analysis of test results. New Relic provides application performance monitoring, AppDynamics provides end-user monitoring, and Amazon Cloud Watch monitors AWS cloud resources.



4. Create and simulate real scenarios of your users' behavior



During stress testing, you must consider the characteristics of your users and their needs. Create scripts according to their habits. If they like to spend a lot of time browsing the catalog in your application, focus on that. If they tend to thoroughly check their identity on your site form, make sure your load test includes those pauses. Realistic stress testing removes relevant bottlenecks for a great user experience.



5. Track user experience



Load testing ensures that your website or application does not paint over at the crucial moment, but you probably also want your users to have a pleasant experience. As part of the DevOps and CI approach, we also recommend that you test your web browsers and operating systems using tools such as Selenium and Sauce Labs . This way, you will be able to detect changes that did not affect performance but did affect the user experience.







6. Consider third-party partners and service providers



When you make changes to your app or site, you are not only affecting your own product. You can also influence third-party scripts in your application or website, or you can disrupt third-party devices or servers if you don't prepare them properly. For example, different CDNs require different approaches, and AWS Load Balancing (ELB) requires warm-up before load balancing.



Although this is part of what you are testing, we recommend that you contact your partners in advance and make all the necessary preparations. This ensures that the load test will take into account their preparation and full capabilities (instead of partial capabilities, as this can happen if they do not have the opportunity to prepare). It also saves you time and effort as you don't have to tackle serious third-party overlays that could be easily avoided.



Are you ready for Black Friday? Start preparing now ! To give BlazeMeter a try, just enter your URL in the box below and your test will start in a few minutes!



www.blazemeter.com/blog/6-load-testing-tips-black-friday



More on the topic






β€” Perfomance Center (PC) Vugen. .





All Articles