What is JMetter?

As the name indicates Jmeter is one of the Java tools which is used to load testing client/server applications. Earlier it was used for testing Web Applications only however now-a-days its being used for other test functions.

What is JMetter?

What is JMetter?

     

As the name indicates Jmeter is one of the Java tools which is used to load testing client/server applications. Earlier it was used for testing Web Applications only however now-a-days its being used for other test functions. It is typically used to measure performance and to load test functional behavior of client-server applications. It can also handle FTP and JDBC requests. You must be aware of such other tools like WinRunner. You will be glad to know that as compared to WinRunner, Jmeter is easy to use due to its simple and intuitive GUI. Moreover its absolutely free and can be modified at ease as its an open source. 

The important functionalities of Jmeter is that a heavy load on a server can be stimulated by using it, not on a server but also a heavy load on a network or object to test its strength under different load types. A graphical analysis of performance can also be done by using Jmeter or the behaviour of your server/script/object can also be tested under heavy concurrent load.

Before going any further lets see how to install it.

Jmeter Installation

The latest version of Jmeter is 1.8 which you can download from JMeter's site, once you download the JMeter zip file you need to unzip it. Jmeter is compatible with JDK 1.4 environment and it can be downloaded as .gz or .zip files. To run JMeter you need to extract the binary distribution file. Jmeter can be run on different OS as described below:

  • You need to invoke the jmeter shell script on Linux/UNIX to run JMeter.
  • If you want to run Jmeter on WINDOWS then call jmeter.bat file. You can find both the files in the bin/ directory of the JMeter installation directory. 

The JMeter's main window is displayed below which is a Swing application.

As shown in the figure above, there are two panes of the user interface. The elements used in our testing is shown by the left pane. Here we are only concerned with the Test Plans as there were two sub-elements earlier that are Test Plan and WorkBench. Furthermore an element can be added to a node on right-clicking and can be removed also by selecting the element and then choosing the remove option by right-clicking on it. Whereas the details of each of the elements is shown by the right pane. 

There are two things to remember before using the JMeter:

  1. If you want to test any application then make sure that you run JMeter on the other machine because it might be possible that Jmeter could affect the other application's performance running on same machine due to the use of some extensive resources.
  2. It is always recommendable to set up an isolated sub-network for the two machines running Web application and the JMeter in order to not to affect the testing by network traffic. 

JMeter's Classpath

The classes from jars are automatically found by the Jmeter in the following directories:

 JMETER_HOME/lib - used for utility jars
 JMETER_HOME/lib/ext - used for JMeter components 

One point to remember here is that you should jar any JMeter components developed by you and also you need to copy the jar into JMeter's lib/ext directory. JMeter components will be automatically found by the JMeter in any jars found here.

Furthermore you should define the property search_ paths in jmeter.properties in case you don't want to put the extension jars in the lib/ext directory. And also lib/ext is intended for JMeter components only and not for utility jars so don't use lib/ext for utility jars. Remember that other jars should be placed in the lib directory - not the lib/ext directory, jars like, JavaMail, JDBC, Beanshell etc.

Note: Only .jar files are found by JMeter not the .zip files.

JMeter starts with "java -jar" so setting the CLASSPATH environment variable will be of no effect as the CLASSPATH variable is ignored by the java command because it happens with all Java programs, not just JMeter.