1010[ ![ Javadocs] ( https://www.javadoc.io/badge/org.apache.jmeter/ApacheJMeter_core.svg )] ( https://www.javadoc.io/doc/org.apache.jmeter/ApacheJMeter_core )
1111[ ![ Twitter] ( https://img.shields.io/twitter/url/https/github.com/apache/jmeter.svg?style=social )] ( https://twitter.com/intent/tweet?text=Powerful%20load%20testing%20with%20Apache%20JMeter:&url=https://jmeter.apache.org )
1212
13- ## What is it?
13+ ## What is it
1414
1515Apache JMeter may be used to test performance both on static and dynamic resources, Web dynamic applications.
1616It can be used to simulate a heavy load on a server, group of servers, network or object to test its strength or to analyze overall performance under different load types.
@@ -19,17 +19,18 @@ It can be used to simulate a heavy load on a server, group of servers, network o
1919
2020Apache JMeter features include:
2121
22- Ability to load and performance test many different applications/server/protocol types:
23- - Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET,...)
24- - SOAP / REST Webservices
25- - FTP
26- - Database via JDBC
27- - LDAP
28- - Message-oriented Middleware (MOM) via JMS
29- - Mail - SMTP(S), POP3(S) and IMAP(S)
30- - Native commands or shell scripts
31- - TCP
32- - Java Objects
22+ Ability to load and performance test many different applications/server/protocol types:
23+
24+ - Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET,...)
25+ - SOAP / REST Webservices
26+ - FTP
27+ - Database via JDBC
28+ - LDAP
29+ - Message-oriented Middleware (MOM) via JMS
30+ - Mail - SMTP(S), POP3(S) and IMAP(S)
31+ - Native commands or shell scripts
32+ - TCP
33+ - Java Objects
3334
3435Full featured Test IDE that allows fast Test Plan ** recording (from Browsers or native applications), building and debugging.**
3536
@@ -53,53 +54,51 @@ and simultaneous sampling of different functions by separate thread groups.
5354Caching and offline analysis/replaying of test results.
5455
5556Highly Extensible core:
56- - Pluggable Samplers allow unlimited testing capabilities.
57- - ** Scriptable Samplers** (JSR223-compatible languages like Groovy)
58- - Several load statistics may be chosen with ** pluggable timers** .
59- - Data analysis and ** visualization plugins** allow great extensibility and personalization.
60- - Functions can be used to provide dynamic input to a test or provide data manipulation.
61- - Easy Continuous Integration through 3rd party Open Source libraries for Maven, Gradle and Jenkins
6257
58+ - Pluggable Samplers allow unlimited testing capabilities.
59+ - ** Scriptable Samplers** (JSR223-compatible languages like Groovy)
60+ - Several load statistics may be chosen with ** pluggable tiers** .
61+ - Data analysis and ** visualization plugins** allow great exensibility and personalization.
62+ - Functions can be used to provide dynamic input to a test orprovide data manipulation.
63+ - Easy Continuous Integration through 3rd party Open Source libraries for Maven, Gradle and Jenkins
6364
6465## The Latest Version
6566
66- Details of the latest version can be found on the JMeter Apache
67- Project web site (https://jmeter.apache.org/ ).
67+ Details of the latest version can be found on the [ JMeter Apache
68+ Project web site] ( https://jmeter.apache.org/ )
6869
6970## Requirements
7071
7172The following requirements exist for running Apache JMeter:
7273
73- * Java Interpreter:
74-
75- A fully compliant Java 8 Runtime Environment is required
76- for Apache JMeter to execute. A JDK with keytool utility is better suited
77- for Recording HTTPS websites.
78- Java 9 is not yet supported as of version 3.3.
74+ - Java Interpreter:
7975
80- * Optional jars:
76+ A fully compliant Java 8 Runtime Environment is required
77+ for Apache JMeter to execute. A JDK with ` keytool ` utility is better suited
78+ for Recording HTTPS websites.
8179
82- Some jars are not included with JMeter.
83- If required, these should be downloaded and placed in the lib directory
80+ - Optional jars:
8481
85- * JDBC - available from the database supplier
86- * JMS - available from the JMS provider
87- * [ Bouncy Castle] ( http://www.bouncycastle.org/latest_releases.html ) -
88- only needed for SMIME Assertion
82+ Some jars are not included with JMeter.
83+ If required, these should be downloaded and placed in he ib directory
84+ - JDBC - available from the database supplier
85+ - JMS - available from the JMS provider
86+ - [ Bouncy Castle] ( http://www.bouncycastle.org/test_releases.html ) -
87+ only needed for SMIME Assertion
8988
90- * Java Compiler (OPTIONAL):
89+ - Java Compiler (* OPTIONAL* ):
9190
92- A Java compiler is not needed since the distribution includes a
93- precompiled Java binary archive. _ Note that a compiler is required
94- to build plugins for Apache JMeter._
91+ A Java compiler is not needed since the distribution cludes a
92+ precompiled Java binary archive.
93+ > ** Note ** that a compiler is required to build plugins for Apache JMeter.
9594
9695## Installation Instructions
9796
98- _ Note that spaces in directory names can cause problems._
97+ > ** Note ** that spaces in directory names can cause problems.
9998
100- * Release builds
99+ - Release builds
101100
102- Unpack the binary archive into a suitable directory structure.
101+ Unpack the binary archive into a suitable directory structure.
103102
104103## Running JMeter
105104
@@ -111,15 +110,15 @@ _Note that spaces in directory names can cause problems._
111110For Windows there are also some other scripts which you can drag-and-drop
112111a JMX file onto:
113112
114- * ` jmeter-n.cmd ` - runs the file as a non-GUI test
115- * ` jmeter-n-r.cmd ` - runs the file as a non-GUI remote (client-server) test
116- * ` jmeter-t.cmd ` - loads the file ready to run it as a GUI test
113+ - ` jmeter-n.cmd ` - runs the file as a non-GUI test
114+ - ` jmeter-n-r.cmd ` - runs the file as a non-GUI remote (client-server) test
115+ - ` jmeter-t.cmd ` - loads the file ready to run it as a GUI test
117116
118117## Documentation
119118
120119The documentation available as of the date of this release is
121- also included, in HTML format, in the ` printable_docs/ ` directory,
122- and it may be browsed starting from the file called ` index.html ` .
120+ also included, in HTML format, in the [ printable_docs] ( printable_docs ) directory,
121+ and it may be browsed starting from the file called [ index.html] ( printable_docs/index.html ) .
123122
124123## Reporting a bug/enhancement
125124
@@ -132,11 +131,6 @@ See [Issue Tracking](https://jmeter.apache.org/issues.html)
132131Unpack the source archive into a suitable directory structure.
133132Most of the 3rd party library files can be extracted from the binary archive
134133by unpacking it into the same directory structure.
135- You can also use Ant to download the required library files:
136-
137- ``` sh
138- ant download_jars
139- ```
140134
141135Any optional jars (see above) should be placed in ` lib/opt ` and/or ` lib ` .
142136
@@ -148,7 +142,7 @@ downloaded by other JMeter users._
148142
149143If you are behind a proxy, you can set a few build properties in ` build-local.properties ` for ant to use the proxy:
150144
151- ```
145+ ``` properties
152146proxy.use =true
153147proxy.host =proxy.example.invalid
154148proxy.port =8080
@@ -158,7 +152,8 @@ proxy.pass=your_password
158152
159153You might also want to skip some tests - that are failing without proper access to the internet - by adding some more
160154properties into ` build-local.properties ` :
161- ```
155+
156+ ``` properties
162157skip.bug52310 =true
163158skip.bug60607 =true
164159skip.batchtest_Http4ImplPreemptiveBasicAuth =true
@@ -171,24 +166,19 @@ skip.test_TestDNSCacheManager.testWithCustomResolverAnd1Server=true
171166
172167### Test builds
173168
174- JMeter is built using Ant .
169+ JMeter is built using Gradle .
175170
176171Change to the top-level directory and issue the command:
177172
178173``` sh
179- ant download_jars
180- ```
181- _ This only needs to be done once; it will download any missing 3rd party jars._
182-
183- ``` sh
184- ant
174+ ./gradlew build
185175```
186176
187177This will compile the application and enable you to run ` jmeter ` from the ` bin `
188178directory.
189179
190180``` sh
191- ant test [-Djava.awt.headless= true]
181+ ./gradlew check [-Djava.awt.headless= true]
192182```
193183
194184This will compile and run the unit tests.
@@ -197,20 +187,20 @@ does not have a suitable GUI display.
197187
198188## Developer information
199189
200- Building and contributing is explained in details at https://jmeter.apache.org/building.html
190+ Building and contributing is explained in details at [ building JMeter ] ( https://jmeter.apache.org/building.html )
201191
202- The code is maintained at GitHub:
192+ The code is maintained at GitHub:
203193
204- - https://github.com/apache/jmeter
205- - https://gitbox.apache.org/repos/asf/jmeter.git
194+ - < https://github.com/apache/jmeter >
195+ - < https://gitbox.apache.org/repos/asf/jmeter.git >
206196
207197## Licensing and legal information
208198
209199For legal and licensing information, please see the following files:
210200
211- * [ LICENSE] ( LICENSE )
201+ - [ LICENSE] ( LICENSE )
212202
213- * [ NOTICE] ( NOTICE )
203+ - [ NOTICE] ( NOTICE )
214204
215205## Cryptographic Software Notice
216206
@@ -236,17 +226,16 @@ code and source code.
236226The following provides more details on the included software that
237227may be subject to export controls on cryptographic software:
238228
239- Apache JMeter interfaces with the
240- Java Secure Socket Extension (JSSE) API to provide
241-
242- - HTTPS support
229+ Apache JMeter interfaces with the
230+ Java Secure Socket Extension (JSSE) API to provide
243231
244- Apache JMeter interfaces (via Apache HttpClient4) with the
245- Java Cryptography Extension (JCE) API to provide
232+ - HTTPS support
246233
247- - NTLM authentication
234+ Apache JMeter interfaces (via Apache HttpClient4) with the
235+ Java Cryptography Extension (JCE) API to provide
248236
249- Apache JMeter does not include any implementation of JSSE or JCE.
237+ - NTLM authentication
250238
239+ Apache JMeter does not include any implementation of JSSE or JCE.
251240
252241** Thank you for using Apache JMeter.**
0 commit comments