Stress testing: tips and tricks for better performance.
By DeviQA on Wed Nov 30 2016 00:00:00 GMT+0000 (Coordinated Universal Time)
Before you rush into your first battle, we should first figure out what we want to get as a result of testing. After verification, as well as any other work, we prepare in advance. When all the aims are not adequately formulated, we can get results that do not adequately reflect the real situation.
Based on the expected load, a Web server, you must define the test criteria. Define what will be considered as a success, and what will be an unacceptable work (e.g., response time, download time).
There are three variants of testing:
What is stress testing in Software Testing?
Let’s define what stress testing is via the expected results:
Basing on results, a webmaster and network administrator can advance to identify bottlenecks that occur due to unbalanced work of components and correct such before including system into a real job.
During testing, we simulate the behavior of several hundreds or thousands of visitors. For more actual results, each virtual user can wander on the site according to the original scenario and personal options. Also, in the testing process, we can simulate short time peaks load, when the number of visitors increases explosively which is right to life for sites with the uneven audience.
Stress Testing in Software Testing: Tips and Tricks
So to conduct a complete testing, you need to know the following testing tips and tricks:
Any of these actions and parameters may change the end result. It’s not necessary for all the checks to be included in one test. They can be divided into a primary task and into subtasks.
For example, monitoring the system (servers: the web, application, database) and testing individual modules (servlets, scripts and so on, for instance, authentication checkup when there’s a large number of users). As a result, testing issues two types of graphs: linear and nonlinear.
In the first case, the response time remains constant when the load is increasing. With further increase of the load, the response time also increases (almost linearly). And, finally, there comes a situation similar to the DOS-attack, when the time Response increases infinitely. Now that a plan of action is ready, it’s high time to go to a brief review of tools that will help you to implement all the steps.
What is Stress Testing like with Open Systems Testing Architecture?
OpenSTA is more than a testing application. It’s open architecture, designed according to open standards. It was created in 2001 by CYRANO company which supported the commercial version of the product. But CYRANO collapsed a long time ago, and now OpenSTA application is distributed as open source software under the license of GNU GPL. It runs in Windows NT 4.0SP5 / 2000 / XP / Win 7 / Win 10.
Current tools let you conduct HTTP / HTTPS stress test services, although its architecture is capable for more. OpenSTA allows creating test scripts in SCL (Script Control Language). To simplify the creation and editing of scenarios illumination, you can use a special tool called Script Modeler.Choose Tools -> Canonicalize URL -> Launch your Web browser. Just wander on the site collecting links to be stored in the script. All request parameters can be edited, it is possible to change variables. Test Structure and titles will be displayed in tabs on the left. Tests are conveniently combined into sets.
Proxy settings are fixed in the script so you can specify multiple servers. There’s an opportunity for distributed testing that improves the realism, or when one computer fails to overload an authoritative server. Each of such machines of the system can perform its tasks group and the repository host collects and stores the results.
A name server runs on each of the systems after it’s installed, which is obligatory. Authentication of users on the web-site and on the establishment of SSL connection is supported. You can control the parameters of the system with SNMP and Windows NT resources.
Test results including response time, the number of bytes transferred per second, response codes for every request and errors are displayed in the form of tables and graphs. Using the bigger number of filters allows you to select the necessary results. The result can be exported into a CSV-file.