Apache Jmeter Vs HP LoadRunner
Head to Head
Open source and free to use.
Industry standard and product from HP.
Limited protocol support.
I have the greatest number of protocol support.
Pure Java (works on any OS that supports a JVM).
C based Language, Java, Java Script and VB.
I have good industry support.
70% Market Share.
JMeter has an unlimited load generation capacity.
LoadRunner has a limited load generation capacity.
JMeter is technically less proficient.
LoadRunner is highly developed and complex.
JMeter lacks in the user interface.
LoadRunner is impressive interface.
Atul Pant
Page 1
Feature Comparison
Apache JMeter
HP LoadRunner
Platform
Java (Platform independent )
Microsoft Windows
(server parts require ASP.NET)
Tool Architecture
Master: Jmeter GUI, control each slave.
Slave: Jmeter-server, receive command from the master and send a
request to server.
Target: web server under test, get request from slaves.
Virtual User Generator : Load script authoring
Analysis: Result Analysis
Controller: Load generator & Test Execution
Remote load
generators
Multiple Remote Load generators hosts are supported.
Distributed (even multi-region) load generator hosts. Over-firewall
solutions.
Cloud-capability
Third-party cloud-based testing is available.
E.g. BlazeMeter
Installing Load Generators on the cloud is available.
Resource monitoring
Few/limited
Supports a variety of platforms/applications.
Resource metrics can be conveniently tracked with other metrics in
the Analysis tool.
Documentation
Apache website provides documentation.
Quality: mixed.
Context sensitive help (press F1)
Quality: good
Community
Open source software community, mailing list.
Official forum on HP site. Activity is low/medium.
Scripting
A script is actually a graphical tree of nodes, with limited editing
capabilities.
Supports BeanShell for evaluations, checks, etc.
C (primarily) and Java.
TruClient protocol: JavaScript.
Recording
HTTP Proxy
HTTP Proxy for remote applications.
Network capture of local applications.
TCP dump for mobile/webservice protocols.
Scenario composition
One script can contain multiple thread groups and form the scenario.
Separate scripts can be configured to constitute a scenario
Protocol coverage
Focus primarily on HTTP and Java-related protocols (JMS, JDBC).
Also supports FTP, LDAP, and SOAP.
Broad coverage from plain HTTP-based protocols through
proprietary enterprise products.
Extensibility
Java plugins
SDK
Atul Pant
Page 2
Functional Comparison
Apache JMeter
HP LoadRunner
Script
Test Plan
VuGen
Recording
Workbench
VuGen
Scenarios
Thread Group
Controller
Results
Listener
Result Analyser
Controller
Logic Controller
Transaction
Request
Sampler
Request
Settings
Config Elements
Runtime/Recording Settings
Timer
Constant Timer
Uniform Random Timer
Gaussian Random Timer
Synchronizing Timer
Think Time
Rendezvous Point
Parameterization
CSV Data set
File or Table
XML Parameter Types
Internal Data Parameter Types
Date/Time
Group Name,
Iteration Number
Random Number
Unique Number
Vuser ID
User-Defined Function Parameters
Correlation
Regular Extractor Expression
Manual Correlation
Automatic Correlation
Check Points
Response Assertion
Duration Assertion
Size Assertion
HTML Assertion
XML Assertion
Xpath Assertion
Text
Image
Atul Pant
Page 3
Apache JMeter
File Extension
Atul Pant
.jmx (Script)
.jtl (Logs)
HP LoadRunner
.usr (Script)
.lrs (Scenario)
.lrr (Results)
Page 4