Scalability Testing Attributes
- Response Time: Response time is the time consumed between the user’s request and the application’s response. Response time may increase or decrease based on different user load on the application. Basically, the response time of an application decreases as the user load increases. Application having the lesser response time is considered as the higher performance application.
- Throughput: Throughput is the measurement of number of requests processed in a unit time by the application. It differs from one application to another as in web application it is measured in number of user requests processed in a unit time whereas in database application it is measured in number of queries processed in a unit time.
- Performance measurement with number of users: Depending on the application type, it is always tested for the number of users that it can support without its breakdown or busy standby situation.
- Threshold load: Threshold load is the number of requests or transactions the application can process with desired throughput.
- CPU Usage: CPU Usage is the measurement of the CPU utilization while executing application code instructions. It is basically measured in terms of the unit Megahertz.
- Memory Usage: Memory usage is the measurement of the memory consumed for performing a task by an application. It is basically measured in terms of the unit bytes.
- Network Usage: Network usage is the measurement of the bandwidth consumed by an application under test. It is measured in terms of bytes received per second, frames received per second, segments received and sent per second etc.
Scalability Testing – Software Testing
Scalability Testing is a type of non-functional testing in which the performance of a software application, system, network or process is tested in terms of its capability to scale up or scale down the number of user request load or other such performance attributes. It can be carried out at a hardware, software or database level. Scalability Testing is defined as the ability of a network, system, application, product or a process to perform the function correctly when changes are made in the size or volume of the system to meet a growing need. It ensures that a software product can manage the scheduled increase in user traffic, data volume, transaction counts frequency and many other things. It tests the system, processes or database’s ability to meet a growing need.
Scalability Testing is to measure at what point the software product or the system stops scaling and identify the reason behind it. The parameters used for this testing differs from one application to another. For example, scalability testing of a web page depends on the number of users, CPU usage, network usage while scalability testing of a web server depends on the number of requests processed.