Macy’s is an incredible American institution – one that I visit every time I’m in the Big Apple. The Herald Square flagship store is a great way to spend 2 hours – or more – shopping. Macy’s has run into challenges lately – and the latest one was an unforced error.
According to US Magazine, Macy’s website crashed on Black Friday, the busiest shopping day of the year. Visitors to the website were treated to a screen advising them of a “temporary shopping jam”.
“Sorry, shoppers! We’re currently experiencing heavier traffic than normal. To make sure everyone gets the best shopping experience possible, we’re asking new shoppers to wait approximately 10 seconds, and then we’ll refresh your browser and welcome you in,” the message read, telling customers that they could also place an order by phone.
“You didn’t know it was #blackfriday ??” one woman tweeted. “Macys website is down my Black Friday shopping is over,” another commented. Other comments were too vulgar to be quoted here.
It will costs millions of marketing dollars to repair the brand. Online sales are especially important to brick and mortar retailers who have been taking a hit for over a decade from Amazon and other online stores. And then there are the sales lost to competitors. You don’t need to get in the car and drive in order to visit a competitor’s online website, you just type in the website address and start shopping. How many of those who ended up at a competitor’s website not only spent money there, but also signed up for a credit card and email offers?
One of These Statements in Wrong
Performance engineers, read this carefully:
- Our applications can scale to all expected loads
- We have enough hardware
- We plan to use cloud machines to seamlessly scale up our capacity
The Solution? Load Testing
Load testing is how Macy’s could have prevented a Black Friday slowdown. With proper load testing, Macy’s could have simulated users and therefore simulate the required workload. They could have added capacity during the test to prove that everything is running as expected.
Smart Scripting is the Key
Smart scripting is the key to running accurate load tests. In order for Macy’s to do business, customers exchange their money for product sold.
In warehouses and in brick and mortar stores, there is inventory, sales staff, and systems to exchange merchandise for money. These are staffed and stocked according to experience and forecasts.
IT uses sales and marketing forecast information to estimate the workload. This is the number of users.
Use experience and some statistical magic to estimate peak load requirement. Marketing says how many people will just look and how many will complete a sale. Marketing and sales say what web pages they traversed to get there. Google Analytics gives you past traffic statistics – in great detail. Now you know what scripts to write.
Using the scripts defined by the requirements, simulate the users until you reach your target user count – and then go 20% to 30% higher so you are ready for a “good surprise” of more customers. This proves that the applications can do the job. Monitor your hardware to ensure that it is up to the task.
If you plan to expand capacity with cloud machines, do so during the test. That proves that the hardware and operations staff can do the job.
The Importance of Load Testing
Load testing is not an obscure technology meant for just a few people. Load testing is how you prevent your company from “starring” in the news for a bad reason! There is no excuse for your system to fail or slow down on your busiest day of the year – or on any day.
Today, RadView has a free edition of our popular load testing software, WebLOAD. I encourage all of you to download WebLOAD and experience it for yourself.
Convince your CIO with this Bloomberg article and this piece from NBC News.