Stress test of Medicover Benefits platform
We have been working with Medicover Benefits for five years. We are responsible for developing and maintaining the benefits platform that serves the employers for management and distribution of non-wage benefits for remuneration among their employees.
We have conducted a series of stress tests to optimize the system, paying particular attention to its growing popularity. Their objective was to reveal bottlenecks and low-efficiency elements.
The tests took place in the production environment at night hours and lasted two hours. They were based on scripts prepared with the client and included the most popular activities of the users, such as purchasing a voucher, browsing through offers, checking the user's account, and others.
How we conduct our tests
Stress tests allow not only to find the load limit, but also to identify the weak points of the application's performance.
Stress tests are all about checking how system components behave in a constantly growing load until they achieve the limit value, after which the application cannot handle any additional traffic. Therefore, data collected during such tests enable us not only to answer the question concerning the system's breaking point but also to determine where we need to look for the bottleneck of the application efficiency.
The first stage of the test is the decision on the essential scripts regarding the influence on the application load and of business processes decided on with the client. The second stage is the implementation of the scripts in dedicated tools and designing the movement of virtual users (their number and the manner of their increase). Finally, the users will be responsible for the performance of the established scripts.
The subsequent stage is the performance of the tests. They are carried out at the most convenient time for the client. The term is established in such a manner that the lack of accessibility of the application is the least perceptible by its users. If a need arises, we use cloud solutions. The last stage amounts to preparing a report from our team's carried out tests. The information is then handed down and discussed with the client.
Conclusions after the tests and further development plans
Prepared report contains conclusions and proposals for improvements and changes in configuration.
The tests indicated that the application is ready to accommodate more significant traffic. However, optimization of the server's configurations is advised. Based on the carried out tests, a report has been prepared. It contains conclusions and proposals for improvements and changes in configuration.
After the necessary configuration changes are implemented, the tests will be repeated to verify the changes.
For better efficiency, cyclical efficiency tests are planned every few weeks. It will allow us to monitor the system capabilities accordingly to the load and identify and eliminate potential bottlenecks.