Performance Testing assesses an application on speed or effectiveness of a computer, network, software program or device. In simple terms, performance tests are designed to simulate a particular workload. The workload is defined as the total burden of activity placed on the application. This burden consists of a number of virtual users who process a defined set of transactions in a specified time period. Assigning the proper workload is one of the most crucial parts of any performance analysis. Testing should be conducted to assess performance for three workload categories:
The most critical reason to conduct Performance Testing is to identify and remove performance bottlenecks that slow down the application's functions. They typically occur due to application design shortcomings, oversight, bugs, or software incompatibility issues.
Different types of performance tests, each focused on different objectives, must be planned and performed throughout the software development life cycle. For example, early design and execution of performance tests will help identify and eliminate performance issues due to design shortcomings. Deferring performance testing to a later stage will prove costly if fundamental design changes are required.
Different types of performance testing must be planned and executed for an application/product depending on scope/need.