Your company is launching a new Web application. This Web application is well designed and attractive. It has been well received by your quality assurance team for testing. You've spent a lot of money to promote your new website. The site has been officially launched. Soon you will realize that your new Web application can not be extended to the typical production load and response time and performance is completely unacceptable levels. Your web logs indicate that the majority of website visitors just what the new site before buying, because its response time is very bad. You start to panic, one of your friends tell you that your application does not perform sufficient reason is that you do not have enough hardware. Hearing this, you decide to add more server hardware. And this has little impact on the response time of the site, but still not enough. You'll soon realize that this is not really a problem in the hardware, but with the Web application itself. It seems that your web application is not well optimized for the typical peak loads. It is becoming increasingly apparent that most of the marketing costs are wasted.
Enter the world of performance and load testing. To ensure that your application extensions as the load increases, the need for the user's application to simulate the load is very similar to the actual load, it will be when it is exposed to the outside world test.
The difference between it and regression testing and function or performance between the test load is important. Functional and regression testing is used to automatically perform a number of scenes to make sure your site works as expected. On the other hand load tester, when it is subjected to heavy loads, such as how a large number of concurrent users of your website performance.
Load and performance testing requires the use of automated testing tools. It is impractical, if not absurd to try to sit with a group of 200 people 200 machine, and try to perform the operation at the same time to simulate 200 concurrent user load. Before you start any type of load and performance testing, you need to make sure you need an automated test scenarios. Web load testing tools typically requests and responses will be recorded on the basis of user interaction with the site. When you perform various operations on your website or application, the tool records all transactions occurring in the network. When you have finished recording, it will generate an automatic script. In addition, you can use this tool to create a script manually. Testers usually will perform a combination of both. They will use the recording mechanism to generate the skeleton base their scripts, and then manually modify the script to take into account the specialized programs. Load testing tools should allow testers to simulate bandwidth-constrained situations. This means, for example, it will accurately simulate users who also use this application on a slow modem connection. It should also allow the use of the tester from a large set of random data to the external data driven the script.
Once your script has been created, you may wish to specifically check in place. These checks are usually tested specifically related to the application. For example, you might want to check the response of a web request to return some of the text to meet the standards. This will involve placing a text checkpoint. A text checkpoint can verify that a given text segment in the presence or absence of the specified portion of the page. Once you've finished creating the script, you will usually tested as a single user on their computer script to ensure that the test script runs as expected.
You can now perform a load test performance is based. A good load testing tool will allow testers to fine-tune the execution of the test. This means that it will allow the test to choose the number of concurrent virtual users, how the script ramps, ramp down, and it is how long it runs. It should also allow the tester to create various groups have their own ramp-up, steady state and deceleration characteristics of concurrent virtual users. A good testing tool will allow users to distribute the load on multiple machines, because a machine may be the only extended to hundreds of users.
Understanding the behavior of a web application is loaded, it is also used for load testing tools to enable the tester to track the performance characteristics of external components such as operating systems, web servers, databases, etc. This allows users to view important that his application performance associated the performance characteristics of the external components. This analysis will allow testers to easily identify the root cause of performance bottlenecks.
In tests performed to test the performance indicators should be able to view real-time performance charts, such as transaction response time, second HTTP response from the HTTP code (eg 200,404,500, etc.) are grouped by transactions per second, failed transactions per second, total transactions per second, per second hit, testers downloading per page should be able to simultaneously view the performance characteristics of the external components. For an operating system, which may be similar to the% of processor time to a database may be written per second. At the end of the test, the tester will generally be able to view and save the data as a report for further analysis.
Load and performance testing to simulate a typical production environment next behavior of your application. This will allow you to effectively plan your hardware deployment strategy, and ensure that your application will provide the expected performance characteristics. Production is expected to launch no load test their performance characteristics of Web applications will be similar to cross the street blindfolded. Load testing is a Web application development cycle is an important component that should not be overlooked. I share all this detail I have almost the same performance test Web application performance tools in IBM called the IBM Rational Performance Tester.