ITWissen.info - Tech know how online

JMeter

JMeter is part of the Apache Jakarta project and names an open source tool for automated execution of tests regarding functional behavior and performance ofclient/ server software. Originally designed only for testingweb applications, JMeter was later extended to test additional functions as well. JMeter supports testing not only static resources but also dynamic resources. For testing the performance of an application, JMeter can generate a high level of load on servers. Furthermore, applications can be tested to see if they provide correct return values. Alternative tools available as open source include Test-Maker or OpenSTA and, as a commercial reference, Loadrunner from Mercury.

Software applications must be tested for their behavior and response times for productive use - this task is performed by Apache JMeter. JMeter is fully implemented in Java, which makes it independent of a specific platform, but requires the prior installation of a Java Runtime Environment ( JRE) for execution. Since the source code of JMeter is available for own modifications under the link below, the installation of a complete Java Development Kit( JDK) makes sense. For testing the performance JMeter refers to static as well as dynamic resources - servlets, Java objects, CGI and Perl scripts, JDBC databases and related requests, FTP servers etc. An important feature is the simulation of different load conditions to analyze the performance of a server, network or object. It is also possible to test the behavior of the server, script or object under extreme and concurrent load conditions.

Creation of a test plan

The first step consists of creating a specific test plan that defines exactly which parts of the application should be executed in order to obtain concrete artifacts regarding the response time behavior. For this purpose, JMeter provides a graphical interface so that individual components can be conveniently added to the test plan. A test plan always consists of:

Thread Group. At least one thread group must be available. Here, among other things, the total number of repetitions for a test plan and the number of threads running simultaneously are defined. Each thread runs through the entire test independently of other threads.

Controllers: There are different types of controllers - Logic, Interleave, Simple, OnceOnly, Random and others. These specify in detail when and how often JMeter should generate something. The OnceOnly, for example, causes all components within a controller to be executed once, which is then ignored in further iterations. Logic controllers control the flow. For example, logins can be executed "OnlyOnce", repetitive search requests can be simulated as a "stress test" or the random controllers can process requests in a random manner. Even the use of cookies or the filling out of forms can be realized with the help of controllers. On the Internet side of the Jakarta project extensive examples are available for it.

Listeners: Collect data and process them graphically.

Timers: Realize a delay, e.g. to exclude the overload of a server.

Samplers:Provide the actual core functionality of a test in the form of various requests - FTP, HTTP, LDAP, SOAP/XML- RPC, Java Object and JDBC requests. Configuration elements, which act as variables, are available for modifying the samplers. This enables the unique assignment of specific server addresses in the case of multiple requests.

Assertions: Allows to test server responses, i.e. if the server returns the expected content or not.

Remote Option. Allows to distribute the test to different computers.

Informations:
Englisch: JMeter
Updated at: 29.10.2013
#Words: 565
Links: Apache, project, tool, performance, server
Translations: DE
Sharing:    

All rights reserved DATACOM Buchverlag GmbH © 2024