Basic Introduction to Jmeter

JMeter is a Java-based desktop application that can be used for performance testing of different kinds of client-server applications like websites, web services, databases, FTP servers etc. It is an open source tool provided by Apache with no licensing cost.

Types of applications that can be tested by JMeter:

  • Websites - HTTP and HTTPS
  • Web Services - REST and SOAP
  • Database Servers
  • FTP Servers
  • LDAP Servers
  • Mail Servers - SMTP, POP3, IMAP
  • Shell Scripts
  • TCP Servers

Advantages of using JMeter

  • Free of cost - It is an open source product with zero licensing cost.
  • Can load test different kinds of - It can be used for performance testing of all kinds of applications ranging from - Web applications, web services, database, LDAP, shell scripts etc.
  • Platform independent - As JMeter is 100% Java-based, so it is platform independent and can run in multiple platforms.
  • Record and Playback feature - JMeter provides record and playback option along with drag and drop feature which makes it easier and faster to create scripts.
  • Customizable - Since JMeter is open source, developers can customize its source code as per their specific requirements.
  • Supports distributed load testing - JMeter supports distributed load testing feature in which we can create a master-slave setup for carrying out a load test on multiple machines.
  • Good community support - JMeter has many online tutorials and helping community support. It also has freely available plugins that help in different aspects of script creation and analysis.

Limitation of Using Jmeter

  • Scripting in JMeter requires some level of expertise and understanding of JMeter elements, regular expressions, session handling etc.
  • It does not have a network visualisation feature unlike other performance testing tools like LoadRunner.
  • A single normal configuration machine is not sufficient for carrying out a load test with a large number of users. In such cases, either a very high configuration cloud machine is required or distributed testing is performed.
  • It does not support ajax, javascript and flash, neither it renders web elements like a browser.
  • It provides very limited real-time test monitoring capability as compared to other tools.

Best Books available