Load testing and performance optimization
Load testing software – is performance testing, which allows you to determine the speed with which the program is running under a certain load. As a result of product performance is evaluated compliance with the requirements laid down in the TOR.
Application testing and its specificity
Most often, stress tests are used for multi-user software products supporting architecture “client-server”, but can also be used for other types of software. Such testing may be subject to CRM-system is performing automation of business processes or accounting software, which generates report documentation database for several years, or text editor to handle a large volume of documents.
During testing, software withstand various loads, including prolonged and the peak. Through a series of tests, developers mimic actions of a certain number of users (virtual) in the program and its individual sections.
To evaluate the performance of the software may also be carried out so-called stress tests, when the load exceeds the norm. With it is determined during queries on the maximum load. Concept of stress testing is often identified with the load, but they are two different types of work.
As the evaluation criteria used by the performance requirements for software, formulated at the stage of its development. If these requirements were not included in the project documentation, testing will be based on the estimated averages.
Principles of exercise testing
Any load testing involves consideration of a number of the principles set out below:
- Unique queries
- Response time
- Dependence of response time on the degree of distributed systems,
- Response time spread,
- Fidelity load profiles.
The uniqueness of requests. When formulating scenarios system developers need to take into account that there are exceptions to any scenario. The principle of using the program are generally determined by the statistics. But if the majority of users use a similar algorithm, there will always be people who do otherwise, and their likely questions should also be considered in the testing.
System response time is calculated by statistical, using the normal distribution function. Terms obtained data, developers determine the approximate time interval.
Dependence of response time on the degree of distributed systems. number of user queries relating to each node, as well as the number of nodes affect the range of processing time. Each node adds a certain proportion of the delay in time for processing.
Scatter response time. With a large number of measurements of time, there are always questions that require maximum processing time. This principle is taken into account in the performance requirements and regular performance tests.
Fidelity load profiles - parameter estimation in which testing can be very expensive if the product includes a number of components. The more complex the device software, the more aspects must be considered when developing and testing.
As with other tests, load carried by specially designed cases and scripts. The possibility of testing centers “Aplana” allow you to pick an effective solution for problems of any complexity.