JMeter simulates a server/network heavy load, so developers can analyze and interpret how their app behaves in extreme environments.

All results can then be racked up and modeled into a nice graph that can be easily interpreted.

Features:

Portable

100 pure Java

Extendable

Multi-threading support

Concurrent sampling by many threads

Simultaneous sampling of different functions

Caching

Offline analysis

Replay test results

Supported server types:

HTTP & HTTPS

FTP

TCP

LDAP

JMS

SOAP

Mail (POP3, SMTP, IMAP)

Databases via JDBC

MongoDB

What is new in this release:

This release brings improvements to the HTTP(S) Test Script Recorder in the certificate management, some new features and fixes some bugs.

What is new in version 2.7:

This release brings some valuable improvements and fixes some bugs.

What is new in version 2.6:

A new toolbar on JMeter's main window.

A new menu option and button allow to start a test ignoring the Pause Timers.

Allow System or CrossPlatform LAF to be set from options menu.

Add "duplicate node" in context menu.

What is new in version 2.5.1:

This release corrects mainly a few bugs that were introduced in 2.5. Version 2.5 introduced a concurrent download feature for embedded HTML resources. Unfortunately this may result in corrupted downloads or other errors (bugs 51918[1] and 51919[2]). Apache will fix these bugs as soon as possible; meanwhile the feature should not be used.

What is new in version 2.5:

The HTTP implementation can now be selected at run-time, and JMeter now also supports Apache HttpComponents HttpClient 4.x. Note that Commons HttpClient 3.1 is no longer actively developed, and support may be removed from JMeter in a future release.

The HTTP sampler now allows concurrent downloads of embedded resources in an HTML page

The HTTP Sampler can now report the size of a request before decompression.

The JMS and Mail samplers have been improved.

The new Test Fragment Test Element makes using Include Controllers easier

There are various improvements to the View Results Tree Listener

Bug 30563 - Thread Group should have a start next loop option on Sample Error

There are two new Thread Group types - setUp and tearDown - which are run before and after the main Thread groups.

What is new in version 2.4:

JMeter now requires at least Java 1.5.

HTTP Proxy can now record HTTPS sessions.

JUnit sampler now supports JUnit4 annotations.

Added JSR223 (javax.script) test elements.

MailReader Sampler can now use any protocol supported by the underlying implementation.

An SMTP Sampler has been added.

JMeter now allows users to provide their own Thread Group implementations.

View Results Tree now supports more display options, including search and Regex Testing.