HP LoadRunner software is an automated performance and testing product from Hewlett-Packard for examining system behavior and performance, while generating actual load. HP LoadRunner can emulate hundreds or thousands of concurrent users to put the application through the rigors of real-life user loads, while collecting information from key infrastructure components (Web servers, database servers etc.)
Consider the client-side application for an automated teller machine (ATM). Although each client is connected to a server, hundreds of ATMs may be open to the public. During peak times — such as 10 a.m. Monday, the start of the work week — the load may be much higher than normal. In order to test such situations, it is not practical to have a testbed of hundreds of ATMs. So, one can use an ATM simulator and a computer system with HP LoadRunner to simulate a large number of users accessing the server simultaneously. Once activities are defined, they are repeatable. After debugging a problem in the application, managers can check whether the problem persists by reproducing the same situation, with the same type of user interaction.
HP LoadRunner consists of several different tools: Virtual User Generator (VuGen), Controller, Load Generator, Analysis and the AJAX TruClient
LoadRunner works by creating virtual users who take the place of real users operating client software, such as sending requests using the HTTP protocol to IIS or Apache web servers. Requests from many virtual user clients are generated by Load Generators in order to create a load on various servers under test.These load generator agents are started and stopped by Mercury's Controller program. The Controller controls load test runs based on Scenarios invoking compiled Scripts and associated Run-time Settings.
Scripts are crafted using Mercury's "Virtual user script Generator" (named "V U Gen"), It generates C-language script code to be executed by virtual users by capturing network traffic between Internet application clients and servers.
With Java clients, VuGen captures calls by hooking within the client JVM. During runs, the status of each machine is monitored by the Controller.
At the end of each run, the Controller combines its monitoring logs with logs obtained from load generators, and makes them available to the "Analysis" program, which can then create run result reports and graphs for Microsoft Word, Crystal Reports, or an HTML webpage browser.
Each HTML report page generated by Analysis includes a link to results in a text file which Microsoft Excel can open to perform additional analysis.
Errors during each run are stored in a database file which can be read by Microsoft Access.