Performance Testing & Engineering of Consumer and Retailer Smart Apps for developing a Stable and Scalable E-Commerce Platform.
The client requirement was to enable retail stores in small towns to develop e-commerce capabilities and enable millions of consumers to leverage online features for their daily shopping needs. The client was operating an ecommerce platform and was planning to onboard the retailers to its platform. Apps were created for both retailers and shoppers.
Goals of the project were to enhance the capabilities of the existing platform with new features and capabilities
- To identify the performance of the current infrastructure and perform capacity planning for future business growth
- The system had to be performance engineered for 1,50,000 retailers from the existing user base of 5000 Retailers
- The system had to be made ready to handle 4,00,000 (0.4 million) orders per day from the existing Orders transaction trafﬁc of 8000 orders per day
- For the above scale, the order mapping and categorization of digital products and physical products had to be correct while maintaining ratio of 4:1
- For the above scale, the system has to ensure all the accounting, calculations and settlements are correctly done
Challenge was to analyze bottlenecks and enhance system & application performance
- Analyzing bottlenecks for DB server because of many end points and inter-connected systems
- Performance Testing of the consumer, retailer and smart app APIs with large number of products and categories in the apps
- Optimizing and ﬁne tuning the known design challenges of Sync process (this process is run to ensure all the retailers get the latest Product Catalog and categories when they login to the app everyday)
- Finetune the digital and physical goods transactions from current capacity of 8,000 to 4,00,000 transactions per day, while maintaining the ratio of digital to physical goods transaction at 4:1
Exploratory approaches and test automation implementation
- Exploratory Testing was conducted to understand the user ﬂows, request – response ﬂows, data ﬂows in a systematic order. Our Test Strategy included the data preparation for end to end scenarios across all three apps.
- For Server side performance testing Jmeter (https://jmeter.apache.org/) was used and all APIs for critical scenarios were load tested, monitored and analysed for optimization while closely working with Devs and Engineering heads.
- Once Test Design was completed, dry runs were conducted to ensure requests were hitting the servers, logs were correctly captured, all parameters are correctly set and monitors were capturing the data.
- Jmeter (https://jmeter.apache.org/) was installed directly in the AWS windows box to ensure maximum network bandwidth availability. Jmeter conﬁguration was changed to utilize 4GB of heap space to avoid out of memory cases (heap space)
Performing value engineering: Scalable and functionally stable system moved to production
Test strategy was prepared and executed to attain maximum test coverage for the application and testing was implemented within a tight schedule. Three teams were created and tasks were assigned based on business risks and priorities. Multiple benchmarking tests were conducted that enabled the client with capacity planning – for new infrastructure and application features. The client was able to successfully onboard the retailers onto the platform and supplemented the users with mobile apps having smart features. The mission to bring millions of rural retail customers had begun and over time the e-commerce system was scaled to accommodate the growing demands from retailers across the countryside and their customers who with limited resources could access and purchase a variety of products online that delivered to distant regions, which was previously a huge challenge.
Write to [email protected] for performance engineering and testing services.