Neoload Presentation

advertisement
Load Testing Using NeoLoad
Why Load Test An Application
 Does the application respond quickly enough for
the intended users?
 Will the application handle the expected user
load and beyond?
 Is the application consistently behaving when
more users access the same?
 Will the application handle the number of
transactions required by the business?
 Is the application stable under expected and
unexpected user loads?
Functional vs. Load Web Testing
OBJECTIVE
Functional
test
Load
test
EXAMPLE
Functionality
Do business processes
function properly after
implementation? (tested
mostly in black box mode)
OBJECTIVE
EXAMPLE
Stability
Will 2,000 concurrent
hits crash the server?
Performance
Is response time
acceptable according
to specifications?
Functionality
under load
Do business
processes function
properly under heavy
load?
Types of Performance Testing
Component
Testing
Find the behavior and performance of each
tier/unit.
Load
Testing
Find out whether the system can handle the
expected load upon deployment under real-world
conditions. This happens even during business as
usual period.
Stress
Testing
Overload the system beyond its expected number of
users or transactions. Usually this happens for shorter
duration, but causes more congestion.
Volume
Testing
Find the stability of the system with respect to
handling large amounts of data over extended time
4
periods.
Manual Testing Is Problematic
Do you have the testing resources?
• Testing personnel
• Client machines
All of you,
click the
GO button
again
How do you synchronize users?
How do you collect and analyze results?
How do you achieve test repeatability?
Coordinator
Analysis?
Web server
Database
server
Testers
Load Generation
System Under Test
The Tool Solution
Overcomes resource limitations
• Replaces testers with “Virtual Users”
• Runs many Vusers on few machines
Controller
Analysis
Vuser
host
Load Generation
• Controller manages the Vusers
• Meaningful results with analysis tools
• Repeats tests with scripted actions
Web server
Database
server
System Under Test
4 Main Components of Load
Testing Tools
• Scripting Component
 Used to Create a Script which mimics a single
user activity on the application. The Script is called
Vuser Script.
• Load test Execution Component
Execute the script as several users.
• Analysis
Analyzing various performance counters.
• Monitoring (Web Server, Database Server,
Networks…).
NeoLoad
• A load testing tool by Neotys.
• Tool that measures performance and
behaviour of the system under load.
• Used for testing web applications, Web
services, flex applications Oracle forms
and Silverlight applications.
• Uses Java Script for script enhancements.
Basic Neolaod Load Testing
Terminologies
• Vuser Script : The script which mimics a single
user activity on the application. This is done by
capturing the Http traffic between browser and
server.
• Container : A group of Http requests that
represents a single user action.
• Population : This defines the number of users.
• Scenario: This shows the number of users, run
pattern and various other run time settings to
mimic the real world load test.
Neoload testing process
• Create a script that mimics a single user activity
on the applications.
• Enhance the script by using pass by values,
variables and assertions.
• Validate the vuser script.
• Set the population and define a scenario.
• Create monitors to monitor the server
parameters.
• Run the load test
• Analyze the results.
Softsmith Neoload Testing Services
• Softsmith has a 1000 vuser license. This means we can test the
application upto 1000 concurrent users
.
• If you wish to avail our service, you can provide the basic details of
you application and application url.
• We conduct and free 100 user test for one hour and provide you the
report.
• If you are satisfies and wish to avail our service we provide a time
and money estimation.
• For further details please contact our sales team at
sales@softsmith.com.
Quick Start ………
Our Test will undergo following phases:
1. Recording the Test Scenario.
2. Running the test.
3. Test Results.
Recording the Test Scenario
1. Starting the
recording
Click on the "Start
recording" button on
the controller to start
recording the
scenario.
Recording the Test Scenario –
cont…
2. Browser settings
•
•
•
NeoLoad will capture pages and
record them into a virtual user
profile. Choose the name of the
profile to record, then select
"Adobe RTMP" if your application
is using the RTMP protocol.
By default, NeoLoad records only
HTTP traffic.
Next, specify which web browser
is to be used for the recording and
whether the browser's cache and
cookies should be cleared before
recording.
Recording the Test Scenario –
cont…
3. Entering the URL to be
recorded
• The browser displays the
NeoLoad recording page,
indicating that the
browser settings are
correct.
• The browser is now ready
to record the scenario.
Enter the URL of the site
to be tested and browse
as normal.
Recording the Test Scenario –
cont…
4. Grouping recorded
pages by business
transaction
• At any time during the
recording, you may
create named containers
in which to group the
visited pages.
• These containers
represent the business
transactions within your
scenario.
Recording the Test Scenario –
cont…
5. Stopping the
recording
• Close the browser to
stop recording. You
may also click on the
controller's "Stop
recording“ button.
Recording the Test Scenario –
cont…
6. Creating your first
virtual user
• Once the recording is
finished, a pop-up
wizard is displayed.
• Follow the steps
through the wizard.
Recording the Test Scenario –
cont…
On the "Virtual Users" tab, you
may configure the think time
for the user.
The think time is a simulation of
the time spent by the user on
the previous page before
accessing the current page.
This delay may be for each page
individually, for all pages
globally or variable within a
given range.
Recording the Test Scenario –
cont…
7. Checking the validity of the
virtual user
• Complex scenarios may
require advanced settings. A
failure to implement these
settings will result in errors and
an unexpected behavior for the
virtual user.
• For example, the virtual user
will not create entries in the
database.
• Check the validity of the virtual
user via the "Run / Start
checking" menu item.
Recording the Test Scenario –
cont…
The "Check Virtual User"
dialog displays the
HTTP request and the
HTTP response of
each NeoLoad
request.
Recording the Test Scenario –
cont…
• NeoLoad automatically flags in error any responses
whose HTTP response code is an error code,
• for example "500 Internal Error". Nevertheless, many
applications return error messages within a valid "200
OK" response. In these cases, NeoLoad does not
automatically detect the error.
• If the virtual user does not behave as expected, check
the responses to see if they contain an error message or
an unexpected content.
• Failure to handle a dynamic parameter will cause an
error. Generally, it means that you may need to extract
and inject some data.
Recording the Test Scenario –
cont…
8. Creating a population
• Click on the "Populations"
tab. A pop-up wizard
prompts you to create a
population for the test.
• A population is a group of
virtual users. In this
example, the population
only contains the
previously recorded
virtual user.
Running the Test
1. The Scenarios tab
•
•
Click on the
"Runtime" button,
then on the
"Scenarios" tab.
Configure the
settings such as test
duration, load policy
(constant, ramp-up,
peaks, custom) and
the number of virtual
users.
Running the Test – cont…
Run the test by clicking on "Run" top menu, and
then click on the "Start playing" button.
Running the Test – cont…
2. The Runtime
Overview tab
• This panel monitors
the test sequence. It
provides immediate
statistics such as
hits/sec., average
response time and
errors.
• The test may be
stopped at any time
by clicking on the
"Stop" button.
Test Results
1. The Test Summary
tab
•
The test summary
provides general
statistics for the test,
including total test
duration, throughput,
total number of hits,
number of errors and
average response time,
together with important
information such as
slowest pages, pages
with the highest error
rates etc.
Test Results – cont…
2. The Values tab
•
•
•
•
•
This tab allows you to:
Quickly plot all the graph
curves for a web page,
HTTP request, a monitor or
an indicator.
Sort the request and web
page statistics.
Use "Filters" to filter the
displayed results by load
generator, population or
virtual user.
Use the "Type" drop-down
list to switch between Web
Pages, HTTP Requests,
Performance counters and
Indicators.
Test Results – cont…
3. The Graphs tab
•
•
•
•
•
The "Graphs" tab can be
used to plot a graph curve
for any statistic in any
request. Simply select
the required statistic
among average response
time, hits/sec., error rate
etc., then drag and drop a
Web
Page, a HTTP request or a
Performance counter into
the graph pane to the right.
You may also plot a curve
for a previous test by
selecting that test in the
Results drop-down list
or compare two tests by
selecting "Compare..." .
Test Results – cont…
4. The Errors tab
•
•
•
•
This tab displays
detailed information on
request errors
encountered during the
test. It itemizes
the requests sent to the
server, the server's
response and the
results of the assertions
checking its
validity. To help pinpoint
the source of the error,
you may access the
request that precedes
the request
containing the error
from this tab.
Communication methodology
• Neoload uses agent less communication
between client and server.
• It is based on the Push technology.
• Push technology is a type of communication
where information is "pushed" by the server to
the browser, contrary to the normal "pull"
principle whereby the browser initiates the
request for information.
• There are several Push methods: polling, long
polling or streaming.
Thank You
• For Queries on Neolaod or Load testing
contact webinar@softsmith.com.
Download