What is Load testing in software testing?

Load testing is a type of non-functional testing. A load test is type of software testing which is conducted to understand the behavior of the application under a specific expected load.

  • Load testing is performed to determine a system’s behavior under both normal and at peak conditions.
  • It helps to identify the maximum operating capacity of an application as well as any bottlenecks and determine which element is causing degradation. E.g. If the number of users are increased then how much CPU, memory will be consumed, what is the network and bandwidth response time.
  • Load testing can be done under controlled lab conditions to compare the capabilities of different systems or to accurately measure the capabilities of a single system.
  • Load testing involves simulating real-life user load for the target application. It helps you determine how your application behaves when multiple users hits it simultaneously.
  • Load testing differs from stress testing, which evaluates the extent to which a system keeps working when subjected to extreme work loads or when some of its hardware or software has been compromised.
  • The primary goal of load testing is to define the maximum amount of work a system can handle without significant performance degradation.
  • Examples of load testing include:
    • Downloading a series of large files from the internet.
    • Running multiple applications on a computer or server simultaneously.
    • Assigning many jobs to a printer in a queue.
    • Subjecting a server to a large amount of traffic.
    • Writing and reading data to and from a hard disk continuously.