110 likes | 146 Views
While developing a website, developers have to explore ways to keep it scalable enough to handle unexpected traffic spike and sudden surge in number of transactions. Also, they need to measure the scalability of the web application precisely to prevent sudden and unexpected crashes. Lot of developers and QA testers ask us what is Scalability testing.
E N D
While developing a website, developers have to explore ways to keep it scalable enough to handle unexpected traffic spike and sudden surge in number of transactions. Also, they need to measure the scalability of the web application precisely to prevent sudden and unexpected crashes. Lot of developers and QA testers ask us what is Scalability testing. Scalability testing enables testers to measure the capability of websites to handle increase in user traffic, number of transactions, and data volume. Many testers perform scalability testing independently to check a website’s ability scale up or scale out with varied workload.
At the same time, scalability testing is also performed along with other forms of non-functional testing – performance testing and reliability testing to assess the overall performance of the web applications accurately. The testers can perform scalability testing based on a variety of parameters according to nature of the each application. They can even perform scalability testing as a series of load tests. Also, scalability testing process can be automated using a number of widely used performance testing and load testing tools. But the testers must understand the characteristics that differentiate scalability testing from other forms of non-functional testing.
Understanding Important Aspects of Scalability Testing A FORM OF NON-FUNCTIONAL TESTING As noted earlier, scalability testing is a form of non-functional testing.It is a form of non-functional testing. The scalability testing results help software QA testing professionals to determine readiness of the software application. Also, the results help testers to assess the web application’s user experience and user satisfaction by identifying the amount of time it takes to complete a specific task and respond to the user request.
DIFFERENT FROM LOAD TESTING • Many beginners consider scalability testing as an alternative to load testing. Like load testing, scalability testing is also a form of non- functional testing. But the two forms of non-functional testing differ from each other in the category of key focus. QA testers perform Load testing to identify the point under which the website response time falls. Normally, load testing is performed with incremental user loads. • On the other hand, scalability testing is performed to measure the performance of a website or web application at various stages from minimum load to maximum load. Here is one of our previous posts on the importance of load testing on SDLC.
PRIMARY OBJECTIVE • The primary objective of scalability testing is to identify the point at which the website stops scaling and find out the reason behind it. The testers perform scalability testing to determine how the website scales as the workload keeps increasing. • Also, they focus on measuring the user limit for the website, along with degradation and robustness of the website’s frontend and backend. At the same time, scalability testing also helps testing professionals to assess the website’s user experience under varied workload.
IMPORTANT ATTRIBUTES • While performing scalability testing, the testers evaluate specific aspects of a software application. Hence, the attributes may differ from one type of software application to another. • However, the testers normally test a number of attributes like performance under incremental measurement based on concurrent user count, request and response of web server per second, network usage, CPU usage, screen transition, and throughput. • Also, they measure requests, hits, and transactions per second as attributes while performing scalability testing. user load, performance
IMPORTANT STEPS OR STAGES The process of scalability testing may differ according to the type of application. But the general scalability testing process consists of a number of stages – defining a process which will be repeated throughout the application lifecycle for execution of scalability tests, selecting scalability criteria, choosing the right load testing tools, configuring hardware and testing requirements, planning load test scenarios, creating load test scenarios, executing scalability tests, evaluating test results, and generating scalability testing reports. Testers have option to combine scalability testing with other forms of non-functional testing like performance testing and reliability testing.