Rational Performance Tester
What is Rational Performance Tester?
IBM Rational Performance Tester (RPT) is a performance test tool which measures the performance of an IT system by generating load on it and measuring the response times of the system under load. RPT generates load by simulating the actions on the system of multiple simultaneous users. The main measures of performance are transaction response times and throughput. Transaction response time is the time taken by the system to respond to a user action, such as navigating from one page to another in a web application. Throughput is the number of transactions (such as a navigation) the system can perform in a given time. RPT is one of the tools our software lifecycle experts use to automate the whole software lifecycle.
What Rational Performance Tester does
RPT generates load on a system by simulating the actions of multiple simultaneous users. Each user is simulated by a thread running a simple program called a script. In RPT, scripts are created by recording the user actions which are to be tested. At the end of the recording, the script is generated automatically. Unlike other load test tools (including HP LoadRunner) an RPT script is not shown as a block of code, but as a sequence of graphical symbols. The script can then be run by multiple threads to simulate the actions of multiple users.
While the load is being applied, RPT measures the time taken by the system to respond to user commands. The commands to be measured are designated in the script. While a test is running, RPT also measures throughput and metrics of the servers of the system under test, such as CPU utilisation, memory utilisation and disk I/O. To generate high levels of load, RPT can make use of multiple machines to run simulated users (load generators or load injectors).
More than one script may be run simultaneously during a test. For example, in a test involving 1000 simulated users, 500 users could run script A, 300 users could run script B and 200 users could run script C. The three scripts would each simulate different user activities on the system and the proportions of each script run by simulated users would be designed to reflect usage volumes observed of real users on the system.
As the load on a system is increased, the response times typically increase (i.e. the system becomes slower from the perspective of a user) and the total throughput reaches a peak. RPT can measure the level of load at which the response times reach an unacceptably high level.
The main benefits of Rational Performance Tester are as follows.
- Adequate performance is an important part of the usability of an IT system. If a system is too slow, user productivity can suffer, and if the system is customer-facing, users may switch to competing systems. In either case there is a direct adverse financial effect on the system owner. RPT helps to prevent this.
- Certain defects only appear under load, for example memory leaks. A memory leak occurs if memory is allocated in a program but not all is released when no longer required. Under load, the system will gradually run out of memory and fail. RPT can help detect and resolve memory leaks.
- Other system resources, such as database connections, can also be exhausted and similarly cause the system to fail. Memory leaks and other problems of resource exhaustion often appear during soak tests (also known as stability tests). A soak test is a performance test carried out over an extended period, typically ranging from a few hours to a few days.
- Performance testing is useful for future capacity planning. Even if the system performs adequately at the expected levels of load, it can be useful to know at what level of load the system will eventually fail, so that plan can be made to increase its capacity as usage grows. This is determined in a stress test, a test in which the load is gradually increased until the system fails.
Rational Performance Tester includes the following features:
- RPT is implemented in Eclipse, IBM’s highly extensible integrated development environment.
- In common with most other performance test tools, RPT works by recording the network traffic between the client and the server, and replaying this traffic in multiple simultaneous threads during a test.
- RPT is used primarily on web based systems (whether internet or intranet), and also covers other protocols such as Sockets, and IBM 3270. RPT also allows users with the requisite skills to develop their own plugins to test other protocols.
- RPT is particularly strong at correlation. Correlation is the process of identifying and storing variables sent out by the server, such as session IDs, and reusing them later in the test. Failure to correlate causes scripts to fail through invalid session IDs or similar errors. In RPT the tester needs to do very little manual correlation. In many tests, no manual correlation is required.
- Scripts are represented as a sequence of graphical objects (shown in the screenshot), each representing a step of the script. User modifications are performed by changing the properties of the relevant object. This is adequate for most situations, but where more complex processing is needed, it is possible to write a code module and invoke it from an object in the script. These code modules are written in Java.
Automation Consultants is an authorised reseller of IBM products. You can buy IBM CLM tools from us at a discount to the list price and benefit from our expert consultancy services.
+44(0)118 932 3001
Automation Consultants shares the same working values as us – they are part of our team, literally! They supply us with up-to-speed consultants who fit in seamlessly.
Theresa Pemble, solution delivery manager, Severn Trent
Using the technical expertise of Automation Consultants' people we have been able to identify and fix problems very early in the migration process thus saving valuable time.
HP Consulting and Integration
In an agile workflow changes to source code should be deployed and tested early and often – as soon as there is a working component you try it out straight away. After working with Automation Consultants all the developer had to do was click a button and wait 20 minutes to register the changes to the advertising platform.
Malcolm Reid, head of product development, Sky IQ
Automation Consultants has been involved in several different projects, from normal performance testing to testing the capability of new hardware systems, as well as creating several innovative bespoke tools that improved productivity, delivered high standard results and added value to the test process. During all of these projects, AC has been flexible and helpful, going out of their way to resolve any difficult technical issues.
Kenneth Lagerwall ,
IS Quality Services, T-Mobile UK
Automation Consultants' technical knowledge and understanding of the Rational toolset, combined with the excellent training they provide, has meant we can forge ahead with application development.
Andy King, head of test, ONS
Automation Consultants has been able to deploy highly skilled resources at very short notice and has always met very demanding delivery deadlines
HP Consulting and Integration
Merlin House, Brunel Road
RG7 4AB, UK
Phone: +44(0)118 932 3001
Founded in 2000, Automation Consultants (AC) is an IT services and software company with a mission to improve the speed and reduce the cost of IT project deployment by implementing automation across the software life cycle. Committed to helping companies optimise their business performance and customer service, AC develops and deploys advanced software automation solutions. Customers include BSkyB, HSBC, Invensys, Orange, EverythingEverywhere and Vodafone.