JMeter
Overview

SUMMARY
.Introduction
.What is Jmeter?
.Why ?
.Preparing tests
.Step 1 Proxy
server
.Step 2
Organization
.Step 3
Genericity
.Step 4
Assertions
.Running tests
.Non GUI mode
.Distributed
testing
.Analyzing Test
Introduction
.Definition :
.JMeteris an
Apache Jakarta project that can be used as a
load testing tool
for analyzing and measuring the
performance of a
variety of services, with a focus on web
applications.
.Why ? :
.JMeter can be
used as a unit test tool for JDBC database
connection, FTP,
LDAP, WebServices,J MS, HTTP and
generic TCP
connections. JMeter can also be configured
as a monitor,
although this is typically considered an ad-
hoc solution in
lieu of advanced monitoring solutions.
Proxy Server
Role
.Record Http
requests run by
users.
.Stick to the
exact http
request a lambda
user .
.Record only what
is
meaningful.
.To be organized.
.Warning
.Doesn’t record
https.
ProxyServer.JPG
regexp.JPG
Organization
Thread groups
Loop controllers
.Determine
.How many users,
will
concurrently run
the tests
.How long between
2 launch
of the test
.How many times
the tests
will be run
.Determine in a
thread group
.How long between
2 launch
of the same
sampler
.How many times
the set of
tests will be
run.
Organization
Thread groups
Loop controllers
untitled.JPG
untitled.JPG
Organization
Throughput
Controller
.Make variable pause
during
the test run to
simulate better
a client
behavior.
.Because the
thread group
doesn’t take in
count the
server, can take
several
seconds before
responding.
untitled.bmp
Genericity
.Variabilisation
:
.In order not to
modify a test to run it on different
machines
.Example : user
and password changing from a shelf to an
other
untitled.JPG
untitled.JPG
Genericity
.Http default
Request
.Allows you to
put a default ip port and path for all the
Http Request
contained in the scope
.Gives you an
easy way to run your test from a device to
an other one just
by changing the default adress.
untitled.JPG
Genericity
.Regular
Expression extractor
.If the data has
to be used several times along the test
.Like a sessionId
for instance.
untitled.bmp
untitled.bmp
Assertions
.Response
assertion
.To match a
pattern in the response code
.The response
code for instance.
.Xpath assertion
.Using the DOM of
the response to check if an element
appear.
.A research
result for instance.
.Size assertion
.To know if the
size of the response received match with
the size expected
.To verify if the
file received is the good one.
Running tests
.Non Gui Mode
.Why?
.The stress due
to test and display is too high when running
distributed
tests.
.How ?
.By running
command line
Example : jmeter
-n -t my_test.jmx -l log.jtl -H my.proxy.server -
P 8000
Distributed
testing
.Why ?
.To simulate
stressed environment with a lot of clients.
.How ?
.Edit
“remote_hosts=127.0.0.1” in jmeter.properties
.Start
jmeter_server.bat on the host machines
.Run jmeter.bat
Analyzing Test
Aggregated graph
Result tree
.Gives all the
statistics
concerning the
tests
.May be recorded
in a
specified file
for further
treatment (data
mining)
.Gives in a tree
form, all the
samplers results,
the
requests, and the
sampler
data.
.May also be
recorded in a
specified file
for further
treatment
Analyzing Test
Aggregated graph
Result tree
untitled.JPG
untitled.JPG