PDF Documentation Neoload

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 61

Introduction About Neoload:

NeoLoad is a load and performance software solution designed for web


and mobile applications to simulate user activity and monitor
infrastructure behavior.
NeoLoad is designed, developed and marketed by Neotys, a company
based in Gémenos, France. It is written in java and available in English
and French. The operating system used are Microsoft
Windows,Linux,Solaris.
NeoLoad allows you to conduct load tests more quickly, efficiently and
frequently. It can deploy any of any technologies you may use such as
Flex, Silverlight, GWT, Ajax Push, Web Socket and Google SPDY.
History:
Neotys was founded in 2005 by a group of software developers and IT
project managers who recognized demand for a new software solution
to test the performance of web applications prior to launch. Since then
Neotys has delivered software solutions to more than 800 clients in 60
countries, with exports accounting for more than 75% of the company's
annual turnover. Early in 2007, Neotys received the "Young Innovating
Enterprise" award, issued by the Ministry of Research and supported by
OSEO Anvar, the French national organization promoting research.
Neotys supports its continued development by expanding its business
around the world.
In November 2009, the first prize Créa13 given by the General Council
of Bouches-du-Rhône, in partnership with Eurocopter, was awarded to
Neotys.
Neotys won the "Tool Challenge" award at the Vienna Software Quality
Days 2010 ("Best Quality Tool Award 2010" for NeoLoad application).
Neotys is included in the report entitled "The Testing Tools Landscape:
2010" from Forrester Research, Inc and is described by Gartner among
the vendors representing the cloud testing tool market broadly.
Products and solutions:
NeoLoad is a load and stress testing tool designed to measure the
performance of web and RIA applications. It works by simulating traffic
up to thousands of users in order to determine how the application
performs under load. It provides various analyses, i.e., response times,
number of simultaneous users, server activity, etc., to provide insight
into where bottlenecks may exist.
The objective is to identify problems early in order to optimize the
performance and quality of the application before it goes into
production.
Features:
NeoLoad works by simulating traffic (up to millions of users) in order to
determine application performance under load, analyze response times
and pinpoint the number of the simultaneous users which the internet,
intranet or mobile application is able to handle. Tests can be performed
from inside the firewall (in-house) or from the Cloud.
In addition to simulating network traffic, NeoLoad also simulates end
user transaction activity including common tasks like submitting forms
or executing searches by emulating 'virtual' users accessing web
application modules. NeoLoad provides the performance information
required to troubleshoot bottlenecks for tuning the application and the
supporting servers. NeoLoad monitors the newest web, database and
application servers such as JBoss application server, HP-UX 11, Web
logic, WebSphere,Tomcat, and MySQL database.
NeoLoad "scripts" are developed via a GUI, which provides conditions,
loops and other programming structures. JavaScript may be inserted for
more advanced uses, such as password encryption.
 It supports Basic, Digest, NTLM and form-based authentication.
 NeoLoad can record HTTPS requests and play them back. NeoLoad
also supports client certificate authentication.
 NeoLoad supports ActiveX components as long as communication
with the server is via the HTTP protocol.
 NeoLoad supports any type of web application including those
using J2EE, .NET, AJAX, Flex, Silverlight, GWT, SOAP, PHP, Push
technology, etc. as long as they are HTTP 1.0 or 1.1 compliant.
 NeoLoad supports hybrid and native mobile applications.
 NeoLoad supports video (HTTP streaming and RTMP).
 JSON and SPDY protocol are also supported by NeoLoad.
 NeoLoad emulatesNetwork conditions (latency, packet loss
and bandwidth).

Release History:

Version Release New optional modules


date

1.0 March 1, -
2005

1.1 July 26, -


2005

SOAP / Linux & Solaris platforms monitor


July 27,
2.0 / SNMP monitor / Apache monitor / Web
2006
Logic monitor / Web sphere monitor

2.1 February Apache Tomcat monitor / Oracle database monitor


13, 2007
2.2 July 17, AIX monitor / HP-UX monitor / JBoss monitor
2007 / MySQL monitor

2.3 December OAS monitor / JOnAS monitor / DB2


3, 2007 database monitor / PostgreSQL database monitor

2.4 March 28, AdobeFlex / OracleForms / IIS monitor /


2008 SQL Server monitor / .Net monitor

2.4.2 May 19, Refactor of Telnet/SSH module in two modules


2008 Linux and Solaris.

2.4.4 July 3, dynaTrace


2008

3.0 May 15, GWT


2009

3.0.6 October GlassFish / SAP / Adobe LCDS


15, 2009

3.1 June 8, Push / RTMP / Java Serialization


2010

3.1.3 October CA APM


26, 2010

3.2.0 February Cloud / Siebel / Silverlight / VMware monitor


23, 2011

4.0.0 April 4, Collaboration / JMX monitor


2012

4.1.0 November Monitoring Data Import module


21, 2012

MongoDB monitor / Kaazing monitor


4.2.0 October
/ AppDynamics integration / Push
30, 2013
module renamed to "WebSocket & Push"

Requirements:

Operating System:

This software supports the following operating systems:


 Windows XP (Load Generator Agent only)
 Windows Vista
 Windows 7 (x86 and x64)
 Windows 8.X (x86 and x64)
 Windows 2003
 Windows Server 2008 (x64)
 Windows Server 2012 (x64)
 Linux x86-x64 (Kernel 2.6 and 3.0.x) tested on Debian 6, CentOS 5.6,
6.4 Ubuntu 12.04, 12.10
NeoLoad is written in Java and should run on any platform supporting
Java 7.
Disk Space:

To install the Controller, it is recommended to have 500 Mb disk space


available.
To install a Load Generator or a Monitoring Agent only, it is
recommended to have 300 Mb disk space available.

CPU and Memory:

Hardware requirements differ widely from one test to another. The


greater the stress placed on the web server, the greater the demand
placed on hardware resources by the Load Generator. Furthermore,
requirements increase with the complexity of the scenario. Additional
Load Generators may be used to further increase the load.
During the test, the Load Generator CPU and memory usage is
monitored in the Runtime screen. If the CPU or memory usage level
regularly exceeds 90%, either the number of Virtual Users must be
reduced, or the think time between pages increased. Alternatively,
additional Load Generators may be used.
A minimum of 2048 Mb system memory is recommended.
Screen Resolution:
A minimum of 1024x768 pixel is required for screen resolution.
Performance Testing:
Performance testing is the testing, which is performed, to ascertain how
the components of a system are performing, given a particular situation.
Resource usage, scalability and reliability of the product are also
validated under this testing. This testing is the subset of performance
engineering, which is focused on addressing performance issues in the
design and architecture of software product.
Why Load Test And Performance An Application?
1. Does the application respond quickly enough for intended users?

2. Will the application handle the expected user load and beyond?

3.Is the application consistently behaving when more users access the
same?
4.Will the application handle number of transactions required by
business?
5.Is the application stable under expected and unexpected user loads?

6.Do you know how your app will perform in production?


7.Does your web application function properly under load?
About Load Testing:
Load testing is necessary to:
1.Test a web site's vulnerability to crashing under load.
2.Check response times under the predicted load.
3.Determines the number of unlimited users supported by the
application.

Load Testing with NeoLoad:


1.Records Http traffic between browser and server.
2.Defines Test Parameter/Scenario.
3.Analyses the results.

Why Neoload?
1. Built for Today's Applications:
It is one solution for all web and mobile applications.
2.Easy and Powerful:
 It is easy to learn and use.
 It has enterprise class features and capabilities for realistic and
efficient testing.
3. Provides Actionable Insight:
 It provides relevant reporting and contextual information helps
isolate root cause.
4. Flexible Delivery:
 It works with both internal and external infrastructure. It is cost
effective and it has flexible licensing.

Basic Neoload 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.

How to Test the Application with Neoload:


NeoLoad, the professional load testing software, provides all the features
you'll need to carry out load tests and analyze the results, all from within
a unique and integrated interface. Depending on large numbers of users
using an application simultaneously, NeoLoad allows you to analyze
both the user response times and your infrastructure's statistics such as
database, Web server, network components etc.
Basically in neoload it consists of 3 parts:
1.Design
2.Run
3.Analyze
1.Design:
NeoLoad records them into Virtual Users presented into a Graphical
User Interface. You don’t need to learn any scripting language. The key
business transactions are created while you record your scenarios.
Populations of users can be defined based on Virtual User profiles, to
represent different groups accessing the application form different
devices, network conditions or geographic locations. NeoLoad comes
with predefined thresholds for most known database and application
servers, helping you identifying immediately the root cause of
performance issues, you can measure your infrastructure performance
during the load.
2. Run:

Define the number of users to simulate according to your design, and


start getting insights regarding your application behavior under load.
Different load policies help you:
 understand the application performance at a regular load,
 ramp up the number of users to find the maximum capacity
 make sure your application is recovering well after a large spike of
user – make sure there is no memory leaks for instance.

Immediately during the test, you can start analyzing the performance
leveraging live charts and dashboards (errors, monitor alerts …).

3. Analyze:

As soon as the test ends, NeoLoad highlights the most significant test
results and any errors in a test summary, thus allowing you to focus
immediately on the points in your application that require attention.

In depth analysis tools help you digging into the details of all the metrics
collected during the test.

A powerful reporting tool, including comparison capabilities, allows you


to present the test results efficiently and share with your team.
Architecture:

NeoLoad has two main components:

1. The Controller

2.The Load Generator and

3.The Monitoring Machine


A load generator is included with the controller to make deployment
even simpler. For testing with average loads, only one machine is
required. Additional, free-of-charge load generators can be deployed on
other machines for testing at very high loads. This flexible architecture
means you can envisage carrying out any kind of test, including those
using high traffic volumes. During a test, NeoLoad collects information
on the server infrastructure via its monitoring modules to pinpoint the
causes of performance issues. For high injection power or geo locations
purposes, or to leverage NeoLoad without the hassle of provisioning
machines, NeoLoad Controller and Load Generator are available in the
Neotys cloud platform.

3. The Controller:

 Here the user can Create Scripts, Record Scenarios, Set up your
targets & goals & Eventually run your tests and analyze the results.
 Executes the test by controlling the load generators outputs.
 The monitoring engine can be installed separately from the
Controller to solve deployment challenges when security
constraints are high.

4. The Load Generator:

 It is a high better approach.


 We can generate the load locally or take it on the cloud.
 Simulates users accessing the application being tested.
 Collects information on the application's performance.
 Can be deployed at no additional cost on as many machines as
required.

3. The Monitoring Engine:

 We can monitor each of your deployment from controller or from


extracted neoload monitoring engine.
 This monitoring engine allows you to place within the same sub
network as deployment to bypass firewall issues.
Opening a NeoLoad Project
A NeoLoad project is an NLP file which is stored by default in the user
directory C:\Users\<user>\Documents\NeoLoad Projects\ (Windows
Vista/Seven), as described in Project Files.
An existing project can be opened:
 from the Neoload welcome page, in the Recent Projects,
 in the NeoLoad menu with the File > Open command.
When the project to open has been designed in a NeoLoad version older
than NeoLoad 5.0, it is migrated and updated automatically, as described
in Project Migration.
When opening a project compatible with NeoLoad 5.0, the Sanity Check
wizard may be displayed. The Sanity Check wizard provides a summary
list of alerts on a test design—Project Sanity Check—or a test
execution—Execution Sanity Check. It makes it possible to identify
potential inconsistencies of scenario components in their logical and
hierarchical organization, correct them, and deliver a high-quality
scenario or launch a feasible test. It raises issues classified in two levels:
warning or blocking.
Icon Meaning Description
Warning The test contains errors.

Blocking The test cannot be launched.

License Management:

Neotys supports several types of license fitted to every use of NeoLoad:


Free Edition : Personal evaluation licence already activated to design
scenarios, launch tests up to 50 Virtual Users and analyze test results.
Modules : Collaboration, Data Exchange API, Custom Actions, CA
APM, dynaTrace and AppDynamics are not included.
Standard license : Either permanent or temporary, a standard license is
linked to one machine. The NeoLoad Controller is used on this machine.
Shared license: A shared license allows making the best of the
authorized Virtual Users capacity between several machines. When
distributing the Virtual Users capacity, the NeoLoad Controller can be
used on several machines simultaneously.
When NeoLoad is started for the first time, no license is installed.
The Missing License dialog box is displayed to choose the running
mode.

Enter a License key: This option makes it possible to specify a


commercial license or a free
one. To evaluate NeoLoad, a click on the Request a Free Edition Key
link opens up the online form to ask for a free license.
Run in no key mode: This option only allows designing scenarios in
NeoLoad and analyzing the results of tests previously launched in
license mode. With this option, launching tests is unavailable.
A click on OK validates the selection. The dialog box is closed.
According to the option selected, NeoLoad displays:
 the NeoLoad Controller in the running mode with no license, or
 the license management screen to enter a license key (commercial or
Free Edition).
 Information: The Missing License dialog box is no longer
displayed when NeoLoad is started again, except when the license has
expired.
To enter a license key, the license management screen is available at any
time with the Help > License Management command.
With a click on License, the NeoLoad general settings screen is
refreshed with the information and the actions to manage the license
key.
Upgrade vs. Update

Upgrading NeoLoad consists in installing:


 a major version (example: NeoLoad 4, NeoLoad 5),
 a minor version (example: NeoLoad 4.1 to NeoLoad 4.2)
Updating NeoLoad consists of installing:
 corrective version (example: NeoLoad 5.0.0 to NeoLoad
5.0.1). Checking for updates can be automated. For more information,
see Advanced Settings. The Help > Check for Updates command
makes it possible to enquire manually about any upgrade available too.
Quick Start:

Our Test will undergo following phases:

1. Recording the Test Scenario.


2. Running the test.
3. Test Results.

4. Recording the Test Scenario:

 Starting the Recording: Click on the "Start recording" button on


the controller to start recording the scenario.

 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.
 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.

 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.

 Stopping the recording: Close the browser to stop recording. You


may also click on the controller's "Stop recording― button.
 Creating your first virtual user: Once the recording is finished, a
pop-up wizard is displayed.Follow the steps through the wizard.

 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.

 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.

 The "Check Virtual User" dialog displays the HTTP request and
the HTTP response of each NeoLoad request.
 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.

 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.

2. Running the Test:


 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.
 Run the test by clicking on "Run" top menu, and then click on the
"Start playing" button.

 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.
3. Test Results:
 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.

 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.
 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 Webpage, 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..."
 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 and 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.

Recording a Native Application in Proxy Mode:

Most native applications are designed to rely on an API which uses a


proxy. NeoLoad can act as a proxy to catch the activity of the mobile
device . NeoLoad can record test scenarios on a native application:
 when the mobile device supports the definition of a proxy—by default,
iOS and Android 4.0 (Ice Cream Sandwich)—and
 when the application is able to use the proxy set on the device.

The communication between the device and the server is recorded


through the proxy based recorder. Both NeoLoad and the mobile device
must be on the same network. The mobile device must be connected to
the NeoLoad network in Wifi. On the mobile device, it is necessary to
manually modify the proxy used by the application or by the browser.
The hostname must be the name or the IP of the NeoLoad machine. The
port is the NeoLoad recorder port (8090 by default).
For example, on Apple products (iOS), the proxy settings are accessible
in Settings > Wi-Fi > <wifi_network> > HTTP
Proxy > Manuel setting option.
When a native application cannot be recorded in Proxy mode, it is
necessary to record it in Tunnel mode.Before recording the scenario, it is
recommended to close all the HTTP client applications (other web
sessions, twitter client, and so on). NeoLoad records all the HTTP flows
going through the machine. It is necessary to close HTTP clients or
define exclusion rules in NeoLoad to avoid unwanted requests in the
record.
In NeoLoad, the Design section gives access to the Start
Recording toolbar button. The Start Recording dialog box makes it
possible to define the new record.

To record in Proxy mode, the Proxy mode option must be selected.


It is recommended to uncheck the Start client option as the mobile
device itself generates the traffic. As soon as the record is started in
NeoLoad, the mobile application can be used. NeoLoad catches the
HTTP traffic of the recorded application to create the test scenario
content.
When all the actions on the mobile application are done, a click on
the Stop Recording button in the NeoLoad recording bar displays
the Post-recording Wizard to configure the recorded scenario.
Once recorded, the scenario can be checked and edited in
the Design section of the NeoLoad Controller.

Recording an Http Application in Proxy Mode:


NeoLoad allows recording a scenario using just a desktop browser. The
NeoLoad Recorder, seen as a proxy by the browser, records each HTTP
request and response to and from the server.

Where the browser accesses the server through a proxy, the recording
proxy uses this same user's proxy to access the server.

To configure the user's proxy settings, see preferences.


Manually Configuring the Recorded Proxy Settings:
For HTTP and HTTPS protocols, use local host or 127.0.0.1 as the
proxy host. The default port for the recorder is 8090 (HTTP and
HTTPS); the port may be changed in the preferences
To change the proxy settings in Internet Explorer, click Tools >
Internet options, and choose the Connections tab.
 If you connect to the server through a local network, go to the Local
Area Network (LAN) settings section and click on the LAN
settings button.
 If you connect through a modem, go to the Dial-up and Virtual Private
Network Settings section and click on the Settings button.

For other browsers, the proxy settings are accessible through the browser
preferences.
Test the set-up by entering the URL http://neoload/. If the page displays
correctly, the settings are correct (this URL is not recorded).
Filtering Out Unwanted Requests:
When using Internet Explorer, unwanted requests may be recorded.
Indeed, the Internet Explorer proxy settings are shared by numerous
other programs that connect to the Internet using the HTTP protocol.
Thus, the recorded test scenario may contain requests emanating from
Windows Update, MSN Messenger login, spyware, and so on.
The recorder exclusion filter already blocks a certain number of access
requests by default. If other unwanted requests remain, these must be
either deleted after recording or added to the filter.
Http Recorder:
Configuring the HTTP recorder consists of specifying the parameters for
the recording proxy and the tunnel mode to capture the requests between
the browser and the web server.
The HTTP Recorder settings group box allows setting the NeoLoad
recorder in Proxy mode.
 Port is the listening port used by the NeoLoad recorder.
 Capture the browser window even when it is in background (for
single window applications) can be selected to have the recorder
capture only the HTTP flows going through the browser window used.
With this option, it is not necessary to close all the HTTP client
applications (web sessions with browsers of other types, twitter client,
and so on) or define exclusion rules to avoid unwanted requests in the
record.
The Tunnel Mode Recorder settings group box lists the parameters for
the recorder in Tunnel mode:
 Connection contains the network interface cards available on the
machine. A selected card is the one used by the recorder in Tunnel
mode.
 IP accessible from client is the IP to which the Tunnel recorder is
bound. It is the IP used by the device which connects to the tested
application.
 HTTPS IP range recording is the collection of IPs which can be used
when recording a number of SSL-secured domains. By default, they are
local IPs.
 In From, it is necessary to enter the first IP of the collection.
 In To, the last IP of the collection must be specified.
In Record patterns, the regular expression patterns to filter the URLs to
be recorded must be entered in the lists:
 Patterns to include: When the Include list contains an entry, NeoLoad
only records the URLs matching at least one regular expression pattern.
The Include list is used only to record requests sent to one or two
servers.
 Patterns to exclude: The request is recorded when it does not match
any of the regular expression patterns in the list. The Exclude list is used
to avoid recording requests sent to certain listed servers, or requests for
JAR or image files for example. URLs authorized by the include list
must pass through the exclude filter, otherwise they are rejected.

Starting Recording in Proxy Mode:


Recording an application can be started with:
 the Start recording toolbar button, or
 the Record > Start Recording command, or
 the Start Recording button in the Virtual Users tab, or
 the Record Here option in the context-sensitive menu (right click on the
mouse).
Starting a new recording creates a new Virtual User profile and place all
the web pages visited during the recording into that profile. At the
beginning of the recording, the cookies may be deleted and the browser
cache may be cleared.
The Virtual User group box defines the new Virtual User:
 Name: In the field, the Virtual User name must be entered. When the
recording ends, the Virtual User with this name contains all the recorded
pages and requests.
 Record in: It is necessary to select the Container into which the pages
visited are to be recorded.
 Init,Actions and End Containers follow a set order
of play:
1. Init Container. 2. Actions Container. 3. End Container.
1. Init Container:
An Init Container groups together all the various web pages required to
initialize the Virtual User. An Init Container is always executed once at
the Virtual User start-up. A typical example of this type of Container is
the set of web pages used to log the user in to the application.

2. Actions Container:

An Actions Container groups together the elements that are repeatedly


executed during a Virtual User runtime until the user stop.

3. End Container:
An End Container groups together the elements executed prior to a
Virtual User stopping. An End Container is always executed once when
the Virtual User stops. A typical example of this type of Container is the
set of web pages used to log the user out of the application.

The Protocols group box helps select the protocols which NeoLoad can
record. NeoLoad records the HTTP protocol by default:
 HTTP/HTTPS: This selected option is dimmed to indicate that
NeoLoad records the application in HTTP/HTTPS in all conditions.
 Web Socket: This option makes it possible to record a Web Socket
application.
 Adobe RTMP: If the license permits, recording for Adobe RTMP (Real
Time Messaging Protocol) may be activated with this check box. RTMP
is a streaming protocol developed by Adobe that works on top of
TCP/IP.
Recording a RTMP application in NeoLoad is subject to certain
limitations.
The Modes group box makes it possible to choose a recording mode:
 Proxy mode: Selecting this option makes it possible to launch the record
in Proxy mode.
 Tunnel mode: Selecting this option makes it possible to launch the
record in Tunnel mode.
The Client settings group box makes it possible to automatically
launches the selected browser and opens the test
URL http://neoload/ using the automatically-configured proxy settings.
If this page displays correctly, the recording proxy has been set up
correctly. Closing the browser stops the recording.
 Launch client: This option must be cleared to manually configure the
recording proxy settings manually launch the browser and record the
scenario.
 Delete cookies: This option deletes cookies prior to recording in order to
simulate a user's first visit to the application. Cookies are restored when
recording ends. As Internet Explorer cookies may be cached in the
system memory, this browser is not recommended if a precise
monitoring of cookies is required.
 Clear cache: This option clears the browser cache in order to simulate a
user's first visit to the application. With Internet Explorer, the cache is
permanently cleared. With other supported browsers, the cache is
restored when recording ends.
 Identify as: This option allows the browser used while recording to
simulate another browser. The option is particularly useful when a
browser is unavailable on the machine (mobile browser for instance).
When the browser used is identified as an iPhone device, the server
returns the mobile version of the application.
A click on the OK button closes the Start Recording dialog box and
displays:
 the recording bar in Proxy mode, or
 the Tunnel mode recording wizard in Tunnel mode.
The recording bar allows modifying the Virtual User during
the recording.

As soon as the recording bar is displayed, the recording starts. The bar
includes the following functions:
 Clicking on the Stop button stops the recording and opens the Post-
Recording Wizard.
 Clicking on the Pause button puts recording on hold. Clicking again on
the Record button resumes recording.
 In Record in, a Container type can be selected into which
the subsequent pages visited are to be recorded.
 In Container, a Container name can be specified for the subsequent web
pages to be recorded within that Container. A Container is used to
identify and collect a group of web pages. Delete the Container name to
end the collection of new pages within the Container and to allow the
creation of a new Container.
 A click on the Rendezvous icon makes it possible to insert a rendezvous
point. Using the Pause button temporarily stops the recording and allows
searching on the Internet or other actions in the browser without
recording.
 Init, Actions and End Container types follow a set order of play:
1. Init Container. 2. Actions Container. 3. End Container
When the record is finished, the Post-Recording wizard is displayed, as
described in Post recording wizard.

To record an application in Proxy mode:


1. In the Design section of NeoLoad, click Start Recording.
2. In the Start Recording dialog box, specify a new Virtual User.
3. In Protocols, select:
 Web Sockets to record the Web Sockets requests,
 Adobe RTMP to request the RTMP requests.
4. To record in proxy mode, check the Proxy mode option.
5. In Launch browser, you can select the recording browser.
6.In Identify as, you can choose to simulate another recording
browser.
7. Click OK. The application starts in the selected browser.
8. In the recording bar, classify your navigation steps by Container.
9. To terminate your record, click Stop.
10. Configure your scenario further in the Post-recording Wizard.

Recording a Native Application in Tunnel Mode:


Some native applications cannot be recorded in proxy mode. When the
mobile device does not support the definition of a proxy or when the
application cannot use the defined proxy, it is necessary to use the
Tunnel mode. This mode makes is possible to record any mobile
application, either web or native, standard or customized, for any
platform in any version.
When a native application is able to use the proxy set on the
device, it is advised to record it in Proxy mode, for it is easier to use.
 The Tunnel mode is available only when NeoLoad 5.0 is installed
on a Windows operating system.
The communication between the mobile device and the server is
recorded through the NeoLoad Tunnel function which makes it possible
to launch the NeoLoad Recorder without using the NeoLoad proxy. On
one side, the Tunnel simulates the web server for the mobile device, and
on the other side, it processes the requests and responses with the web
server. The Recorder catches the transactions to build the scenario.
NeoLoad allows the filtering of the recording to skip or include some
requests in order to get an accurate scenario.

Recording an application can be started with:


 the Start recording toolbar button, or
 the Record > Start Recording command, or
 the Start Recording button in the Virtual Users tab, or
 the Record Here option in the context-sensitive menu (right click on the
mouse).
 Before recording the scenario, it is recommended to close all the HTTP
client applications (other web sessions, twitter client, and so on). All the
HTTP traffic going through the client are recorded by NeoLoad. It is
necessary to close HTTP clients or define exclusion rules in
NeoLoad to avoid unwanted requests in the record.
The Recording dialog box makes it possible to define the new record.
To record in Tunnel mode, the Tunnel mode option must be selected.
It is recommended to uncheck the Start client option as the mobile
device itself generates the traffic. As soon as the record is started in
NeoLoad, the mobile application can be used. NeoLoad catches the
HTTP traffic of the recorded application to create the test scenario
content.
A click on the OK button closes the Start Recording dialog box and
displays the Tunnel mode recording wizard to prepare the recording.
A click on the Detect servers button starts the native application
discovery function.

The Detecting servers bar shows the IP address of the NeoLoad


Controller. Without closing the bar, the IP address of the DNS server of
the device must be modified to reroute transactions toward the NeoLoad
Controller:
1. The IP address of the DNS server of the mobile device must be
noted down to reset the device after the recording process.
2. In the Wifi parameters of the mobile device, it is necessary to
switch the IP address of the DNS server with the IP address of the
NeoLoad Controller shown in the Detecting servers bar.
3. The device must be restarted to save the change.
At that moment, the application on the mobile device must be started to
have NeoLoad detect the servers used in the application. On the mobile
device, every action in the scenario must be performed to have
the Detecting servers bar analyze the application.
A click on the Stop server detection process icon closes the Detecting
servers bar and updates the Tunnel mode recording wizard.
The Servers list step displays all the application servers and domains to
record:
 Hostname is the name of the server or domain.
 Port is the port requested by the application. It must be checked and
changed when necessary.
 SSL must be selected when the connection to the server or domain is
ciphered.
 The servers list is empty for the first Virtual User. Otherwise, it

shows the servers used by the Virtual Users already created for the
application.
 When recording in Tunnel mode from a real mobile device, it is

necessary to manually define the port which NeoLoad must listen.


Otherwise the client application may display a connection refused
error.
The servers list can be modified with the Add and Remove buttons. It
can be modified subsequently too at the end of the scenario record or in
the Design section.
In the Tunnel mode recording wizard, clicking the Next button
launches the Configuration check step.
When issues are raised, it is necessary to correct them before starting the
true record of the application:
 Additional IPs may be required to connect to SSL servers, It may be
necessary to assign more IPs in the Operating System.
On Windows Seven for example, it is necessary to choose Control
Panel > Network and Sharing Center > Local Area
Connection > Properties > Internet Protocol Version 4
(TCP/IPv4) >Properties > Advanced to display the Advanced TCP/IP
Parameters dialog box. In the IP addresses section, a click on
the Add button allows specifying the first IP for the identifiers range, for
example192.168.1.210. All the parameters must be saved for the new
virtual IP addresses to be taken into account.
 Ports may be already used: When a port is required by NeoLoad
although it is already used by another application, NeoLoad cannot
process the record. That application process that used the port must be
stopped.
Once IPs and ports are ready, clicking Back in the Tunnel mode
recording wizard makes it possible to restart the Configuration
check step. When the configuration is ready, a click on the Finish closes
the wizard.
The Recording of Virtual User bar is displayed to record the mobile
application. To make sure the DNS server is used when recording the
application, the mobile device must be restarted.

Browsing the application and performing every action of the scenario


automatically create the record in NeoLoad. When all the actions are
done, a click on the Stop Recording icon stops the recording and closes
the recording bar. The Post-recording Wizard opens up to help
configure the recorded scenario. Subsequently, the scenario can be
edited and improved in the Design section of the NeoLoad Controller.
When the recording is over, the original IP address of the DNS server
must be set back on the mobile device before restarting it to save the
change.
When a problem prevents the recording to terminate correctly, the
internet connection may be suspended after the recording. Stopping the
recording prematurely does not make it possible for NeoLoad to reset
the operating system DNS configuration. The configuration must be
restored from the neoload.log file : The log keeps track of the original
DNS configuration before it is modified for the Tunnel mode. For
example:
2012/11/13 09:27:20 INFO - neoload.DNS: Original DNS server IP is :
192.168.1.42012/11/13 09:27:20 INFO - neoload.DNS: Original DNS
server is configured by DHCP : false
The first line shows the IP address of the primary DNS server. The
information helps reset the network configuration back to its original
state.
The second line tells whether the DNS server was retrieved from the
DHCP server.
 To record a native application in Tunnel mode
1.Connect your mobile device in Wifi to the same network as your
NeoLoad controller.
2. In the Design section of NeoLoad, click Start Recording.
3. In the Recording dialog box, specify a new Virtual User.
4. To record in Tunnel mode, check the Tunnel mode option.
5.To record from your mobile device, uncheck the Launch
browser option. Click OK.
6. In the Tunnel mode recording wizard, click Detect servers.
7.The Detecting servers box gives you the IP address of the
NeoLoad Controller.
8. On your mobile device, change the Wifi parameters:
 Note down the current IP address of the DNS server.
 Change it with the IP address of the NeoLoad Controller.
 Restart your mobile device.

9.On your mobile device, start your application. Browse the


application as expected in your scenario.
10. Click on the Stop server detection process icon.
11.In the Tunnel mode recording wizard, rectify the servers list and the
record configuration. Click Finish. The Recording of Virtual
User bar is displayed.
12.Restart your mobile device. Start your application. Browse the
application as expected in your scenario.
13. Click on the Stop recording icon.
14.Reset the IP address of the DNS server of the mobile device.
Restart the device.
15.Configure your scenario further in the Post-recording Wizard.
Starting Recording in Tunnel Mode:

Recording an HTTPS Application:

When recording a scenario, NeoLoad acts as a go-between with the


browser and the web server. With a secure connection, NeoLoad has to
decipher the traffic flowing between the two entities in order to analyze
its content. Each time a communication is sent, NeoLoad decodes the
incoming data, analyzes it, and re-ciphers it before sending it out again.
This process requires the use of certificates.

Before recording the scenario, it is recommended to close all the HTTP


client applications (other web sessions, twitter client, and so on).
NeoLoad records all the HTTP flows going through the machine. It is
necessary to close HTTP clients or define exclusion rules in NeoLoad to
avoid unwanted requests in the record.
Certificates:
For each request using the HTTPS protocol, NeoLoad retrieves the
certificate provided by the SSL server. This certificate is essential to
ensure secure communication between the proxy and server. Moreover,
NeoLoad takes on the role of the server, issuing a certificate that is sent
to the browser to secure communication between proxy and client. This
certificate, created on-the-fly by NeoLoad during recording, is not
recognized by the browser as being valid, since it is not authenticated by
any certificate authority. The browser displays messages warning that
the certificate provided by the server (in this case NeoLoad) cannot be
trusted and that, consequently, the connection cannot be secured.
Importing the certificate authority certificate (root certificate) into
NeoLoad enables each certificate generated automatically during
recording to be authenticated, thus preventing the display of certificate
error messages in the browser. The root certificate is placed in the
certificate authorities keystore. The section Importing/Installing the Root
Certificate details the procedure to follow. Be warned that installing a
root certificate in a browser creates a serious security loophole. It is
important to have read and fully understood the associated risks for the
machine security as set out in Security Warning before proceeding.
The root certificate is created when NeoLoad is first launched and is
named DO_NOT_TRUST_NeoLoadRoot.cer. It can be found in the
configuration sub-directory of the user profile directory.
In Windows, this configuration
directory is %ApplicationData%/Neotys/NeoLoad/v<version>/conf/, for
example:
 Windows XP: C:\Documents and Settings\username\Application
Data\Neotys\NeoLoad\v5.0\conf\
 WindowsVista: C:\Users\username\AppData\Roaming\Neotys\NeoLoad
\v5.0\conf\
 Windows7: C:\Users\username\AppData\Roaming\Neotys\NeoLoad\v5.
0\conf\
 Windows8: C:\Users\username\AppData\Roaming\Neotys\NeoLoad\v5.
 0\conf\
In Unix/Linux, the directory
is <HOME>/.neotys/neoload/v<version>/conf/, for example
/home/username/.neotys/neoload/v5.0/conf/
Importing or Installing the Root Certificate:
Importing the NeoLoad certificate authority certificate
(DO_NOT_TRUST_NeoLoadRoot.cer)into the browser certificate
authority keystore enables each certificate generated during an SSL
recording to be authenticated, thus preventing the certificate error
messages in the browser.
Be warned that installing a root certificate in a browser creates a serious
security loophole. It is important to have read and fully understood the
associated risks for the machine security as set out in Security
Warning before proceeding.
The procedures for installing the root certificate with the Internet
Explorer and Mozilla Firefox browsers are set out hereinafter.

Internet Explorer:

 To import/install the root-certificate on Internet Explorer


1. Double click on
the DO_NOT_TRUST_NeoLoadRoot.cer certificate. A window opens
displaying the certificate details.

2. Click Install certificate to launch the importation wizard.


3. Click Next. The wizard prompts you to enter the store in which
you want to place the certificate. Click the Place all certificates in the
following store option.
4. Click Browse and choose the Trusted Root Certification
Authorities store.

5. Click Next to validate.

6. Click Done to exit the wizard.


7. A system window opens, prompting you to authorize the certificate
installation in the Trusted Root Certification Authorities store. You must
only validate this step if you have read and fully understood the risks
this procedure entails.
8. After clicking Yes, the system confirms that the certificate has
been correctly installed.

9. Re-start the browser before making a new recording.


10. From now on, clicking on
the DO_NOT_TRUST_NeoLoadRoot.cer certificate will display
certificate details, confirming that the certificate is correctly installed.
the

Mozilla Firefox:

 To import/install the root-certificate on Firefox


1. In the browser menu, go to Tools > Options and click on
the Advanced button on the top right. Next, select the Encryption tab.

2. Click View Certificates to open the Certificates Manager.


3. Click on the Authorities tab, then click Import to import a new
certificate into the Trusted Root Certification Authorities store. An
explorer window prompts you to select the file containing the certificate
to be imported. Check all three boxes so that the root certificate covers
all types of applications.

4. Click OK. The Certificate Manager now displays the certificate


you have just installed.

5. Re-start the browser before making a new recording.


Certificate Use:
Internet Explorer:
When recording using SSL, Internet Explorer displays a closed padlock
to the right of the URL address bar to indicate that the data being
transferred is secured. The details of the certificate generated by
NeoLoad can be viewed by clicking on the padlock. The certificate is
authenticated by the DO_NOT_TRUST_NeoLoadRoot_v4.0 certificate
authority.

Mozilla Firefox:

When recording using SSL, Firefox displays a closed padlock in the


bottom right-hand side corner of the browser window to indicate that the
data being transferred is secured. The details of the certificate generated
by NeoLoad can be viewed by clicking on the padlock. The certificate is
authenticated by the Neotys certificate authority.
Removing a Root Certificate:

Internet Explorer

 To remove a root certificate on Internet Explorer


1. In the browser menu, go to Tools > Internet options and select
the Content tab. Next, click on the Certificates button.
2. Click on the Trusted Root Certification Authorities tab. Select
the certificate to be deleted, then click Remove.
3. Two windows are displayed warning that deleting system root
certificates might prevent some Windows components from working
properly. The browser will display certificate errors when recording in
NeoLoad using SSL, since the generated certificates will no longer be
authenticated. Click Yes to continue.

Mozilla Firefox

 To remove a root certificate on Firefox


1. In the browser menu, go to Tools > Options and click on
the Advanced button on the top right. Next, select the Encryption tab.
Click View Certificates to open the Certificates Manager.
2. Click on the Authorities tab, select the certificate to be deleted,
then click Delete.

3. A window is displayed warning that deleting system root


certificates might prevent some Windows components from working
properly. The browser will display certificate errors when recording in
NeoLoad using SSL, since the generated certificates will no longer be
authenticated. Click ok to continue.

You might also like