<?xml version="1.0"?>
<!--
   $Header$
   Copyright 2001-2004 The Apache Software Foundation
 
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
 
       http://www.apache.org/licenses/LICENSE-2.0
 
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->

<document>
  <properties>
	 <author email="bburns@apache.org">Brendan Burns, et al.</author>
	 <title>Apache JMeter</title>
  </properties>
  <body>
	<section name="Apache JMeter">
	<p>
	  <b>Apache JMeter</b> is a 100% pure Java desktop application designed
	  to load test functional behavior and measure performance.  It was
	  originally designed for testing Web Applications but has
	  since expanded to other test functions.
	</p>
	<h2>What can I do with it?</h2>
	<p>
	  Apache JMeter may be used to test performance both on static and dynamic
	  resources (files, Servlets, Perl scripts, Java Objects, Data Bases and
	  Queries, FTP Servers and more). It can be used to simulate a heavy
load on a server, network or object to test its strength or to analyze
overall performance under different load types. You can use it to make a
graphical analysis of performance or to test your server/script/object
behavior under heavy concurrent load.
</p>
<h2>What does it do?</h2>
<p>Apache JMeter features include:</p>
<ul>
	<li>Can load and performance test HTTP and FTP servers as well as
		arbitrary database queries (via JDBC)</li>
	<li>Complete portability and <b>100% Java purity</b>.</li>
	<li>Full <b>Swing</b> and lightweight component support (precompiled JAR uses packages
		<code>javax.swing.*</code>).</li>
	<li>Full <b>multithreading</b> framework allows concurrent sampling by many threads and
		simultaneous sampling of different functions by seperate thread groups.</li>
	<li>Careful <b>GUI</b> design allows faster operation and more precise timings.</li>
	<li>Caching and offline analysis/replaying of test results.</li>
	<li> Highly Extensible:
	  <ul>
		<li>Pluggable Samplers allow unlimited testing capabilities.</li>
		<li>Several load statistics may be choosen with <b>pluggable timers</b>.</li>
		<li>Data analysis and <b>visualization plugins</b> allow great extendibility
		as well as personalization.</li>
		<li>Functions (which include JavaScript) can be used to provide dynamic input to a test</li>
		<li>Scriptable Samplers (BeanShell is supported in version 1.9.2 and above)</li>
	  </ul>
	</li>
</ul>
<h2>How do I do it?</h2>
<ul>
<li><a href="usermanual/index.html">Using JMeter</a></li>
<li><a href="http://wiki.apache.org/jakarta-jmeter/JMeterFAQ">JMeter FAQ (Wiki)</a></li>
<li><a href="http://wiki.apache.org/jakarta-jmeter/JMeterDevelopment">Extending JMeter (Developer Notes) (Wiki)</a></li>
<li><a href="api/index.html">Javadoc API documentation</a></li>
<li><a href="localising/index.html">JMeter Localisation (Translator's Guide)</a></li>
</ul>
<h2>Further Information About JMeter</h2>
<ul>
<li><a href="changes.html">Change List</a></li>
<li><a href="known_bugs.html">Known Bugs</a></li>
<li><a href="license.html">License</a></li>
<li><a href="http://wiki.apache.org/jakarta-jmeter/JMeterCommitters">Contributors</a></li>
</ul>
</section>
</body>
</document>
