NeoLoad® Documentation
Getting Started
Overview
Welcome to Neoload Help
Contents
Formats
Legal issues
About Load Testing
Why load test web applications ?
Load testing with NeoLoad
Installation
Requirements
Operating system
Disk space
CPU & memory
Installation
Installing the Controller
Installing a Load Generator
License Key Management
The Standard Key
Installing the license key
Activating the license key
Transferring the license key
The Floating Key
Definition
Installing the floating key
Get a floating key
Releasing a floating key
Changing Mode
Switching from a standard license to a floating license
Switching from a floating license to a standard license
Running NeoLoad
Running the Controller
Running the graphical interface
Running from the command line
Using NeoLoad with ANT
Launching the Load Generator Agent
Stopping the Agent
Files
The Installation Directory
The User Directory
Agent started as a Windows Service
Log Files
Advanced Installation
Using a firewall between the Controller and Load Generator
NeoLoad and Windows XP SP2 Firewall
Increasing available memory for Load Generators
Increasing available memory for the Controller
Quick Start
Recording the Test Scenario
Running the Test
Test Results
Reference Guide
Preferences
Global preferences
HTTP Recorder Settings
Proxy settings
Browser Settings
Skins
Graphs
Runtime graphs
Dynamic Parameters
License
Project Preferences
Page naming policy
Managing certificates
Runtime
Javascript
Variables
Creating a Variable
Value change policy
Variable scope
The Variable Extractor
Testing a Variable
Using Variables
The Results Manager
Select
Compare
Generating a Report
Deleting a Test
SSL Client Certificates
Importing certificates
The Recording Certificate
Playback certificates
Example
Security concerns
Design
Recording a Test Scenario
Set-up
SSL support
Starting recording
Automatic browser management
Supported browsers
Manually configuring the recording proxy settings
The Recording Completed wizard
Filtering out unwanted requests
Troubleshooting
The Repository
Servers
Authentication
Supported authentication mechanisms
The Negotiate scheme with SPNEGO and Kerberos
Scheme priority order
Web pages
HTTP requests
Type
Request parameters
POST parameters
POST requests with binary content
POST requests with text content
Multi-part POST parameters
Fields specific to the file part
Advanced parameters
The variable extractor
Validation
Delay
Page size
Page content
Flag specific requests
Shortcuts
Search and replace
Link and form extractors
Link extractor
Example
Form extractor
Example
Managing dynamic parameters
Concept
Searching for dynamic parameters in NeoLoad
Managing framework dynamic parameters
Operation
Creating a new framework dynamic parameter
Creating a framework dynamic parameter using a variable extractor
Managing generic dynamic parameters
Operation
Example
Limits
SOAP requests
Creating a SOAP request
Recording a SOAP request
Editing a SOAP request
Editing the parameters extracted from the WSDL
Parameters
Headers
Advanced
XML preview
Editing the XML content
XML text
XML tree
Preview
Configuring the "SOAPAction" HTTP header
Testing a SOAP request
Virtual Users
Creating a Virtual User
Actions
Errors
Thinktime
Validating a Virtual User
Summary
Request
Pages
Advanced parameters
Export
Look for dynamic parameters
Logical actions
Delay
Loop
While
If ... Then ... Else
Variable Modifier
Containers
Random containers
Try ... catch
Stop Virtual User
Populations
Percentage
Bandwith
Browser
Use cookies
Connection
Cache management
JavaScript
How it works
What you can do
What you cannot do
JavaScript actions
Creating a JavaScript action
Editing a JavaScript action
Errors
JavaScript libraries
Creating a JavaScript library
Editing a JavaScript library
Using an application's JavaScript file
API overview
Execution context
Variable management
Logger
Error management
Adding a cookie
Script example
Java Librairies
Importing a project
Exporting a Project
Runtime
Test Settings
Scenarios
Duration policy
Load policy
In standard mode:
In iteration mode:
Load Generator hosts
Advanced host configuration
Network
Configure IP spoofing
Load balancing
Automatically updating Load Generators
Advanced
Runtime policy
Monitors
Scheduling a test
Monitors
Monitor types
Server connections
Definition
Properties
Defining a monitor
Definition
Properties
Advanced parameters
Value calculation
Value sampling
HTTP monitors
HTTP connection
Monitoring an Apache web server
Configuring an Apache web server
Configuring an HTTP monitor in NeoLoad
Monitoring other web servers
WebLogic monitors
WebLogic 8 monitors
Configuring a WebLogic monitor in NeoLoad
WebLogic connection
New WebLogic monitor
WebLogic 9/10 monitors
Configuring a WebLogic monitor in NeoLoad
WebLogic connection
New WebLogic monitor
WebSphere monitors
Configuring a WebSphere monitor in NeoLoad
Configuration WebSphere 6.0
Configuration WebSphere 6.1
WebSphere connection
New WebSphere monitor
JBoss monitors
Configuring a JBoss monitor in NeoLoad
JBoss connection
New JBoss monitor
Tomcat 5.5/6.0 monitors
Configuring a Tomcat monitor in NeoLoad
Tomcat connection
New Tomcat monitor
Oracle Application Server monitors
Configuring an Oracle Application Server monitor in NeoLoad
Oracle Application Server connection
New Oracle Application Server monitor
Jonas monitors
Jonas connection
New Jonas monitor
RSTAT monitors
RSTAT monitors list
SNMP monitors
SNMP connection
New SNMP monitor
Linux monitors
Linux connection
New Linux monitor
Solaris monitors
Solaris connection
New Solaris monitor
AIX monitors
AIX connection
New AIX monitor
HP-UX monitors
HP-UX connection
New HP-UX monitor
Windows monitors
Connecting to a remote server
Main counters
MySQL monitors
New MySQL monitor
MySQL monitors list
Oracle monitors
New Oracle monitor
DB2 Monitors
New DB2 monitor
DB2 monitors list
PostgreSQL monitors
New PostgreSQL monitor
PostgreSQL monitors list
Runtime
Stopping the test
Runtime information
Real-time graph
Load Generators
Real-time monitoring
Creating a new graph
Changing the title of a graph
Adding a monitor to a graph
Deleting a graph
Deleting a monitor in a graph
Moving a graph
Maximizing/minimizing a graph
Restoring default graphs
Plotting interval
Real-time errors
General Error Information
Selected error details
Request
Server response
Assertions
Previous request
Results
General Information
Selecting a test
Deleting a test
Filtering by Population or Virtual User
Web page vs. HTTP request statistics
Test Summary
Selecting a summary
Test summary
Statistics summary
Hot spots
Top 5 errors
Top 5 average response times
Top 5 maximum response times
Errors
Page results
Container results
Graphs
Plotting a statistic
Plotting a monitor
Drawing a graph using a template
Deleting a curve
Graph features
Zoom
Pop-up Menu
Scale factor
Editing the scale factor
Caption bar
Modifying the horizontal axis
Comparing test results
Using multiple graphs
Using graph templates
Percentile graphs
Exporting data
Values
Displaying web pages or HTTP requests
Results table
Plotting curves
Exporting data
Errors
General error information
Selected error details
Request
Server response
Assertions
Previous request
Generating a Report
Launching the Report Wizard
Report settings
Format
Customized graphs
Output
Open
Exporting customized graphs
Comparing Two Test Results
Comparing results in the GUI
Launching the comparison
Using the GUI
Returning to Standard mode
Generating a comparison report
Troubleshooting Guide, F.A.Qs and HOWTOs
Best Practices
Defining Objectives
Types of objective
Defining criteria for success or failure
Producing a Realistic Test
Defining the number of Virtual Users.
Defining several types of Virtual Users
Using different user accounts and values
Testing load balancers
Simulating actual user bandwidth
Tips
Making your Results Talk
Producing informative results
Validating key pages
Begin with low volumes
Stop any Virtual Users containing errors
Use Containers
Using results
Comparing results
Interpreting advanced statistics
Managing test results
NeoLoad F.A.Q
General Questions
Designing
Running
Analyzing
Understanding Errors
Troubleshooting Guide
Neoload HowTos
Running a Test from the Command Line
Scheduling a Test
Scheduling a Test with NeoLoad
Scheduling a Test with the OS
Increasing Available Memory for the Load Generator
Logging in With Multiple Accounts Using a CSV File
Creating and Linking a CSV Variable to Login Information
Create and Define a CSV Variable
Link the CSV Variable to Login Information
Link the CSV Variable for Basic and NTLM Authentication
Link the CSV Variable for Form Based Authentication
Multiple Accounts Using the Post-recording Wizard and a CSV file
Multiple Accounts with Basic or NTLM Authentication
Multiple Accounts with Form Based Authentication
Specifying the CSV file to use
Creating Virtual Users
Creating a Virtual User Using the Post-recording Wizard
Creating and Configuring a Virtual User
Creating a Virtual User
Adding, Moving and Removing Virtual User Pages
Configuring and Checking a Virtual User
Enhancing a Virtual User's Behavior with a Container
Creating Virtual Users that Behave Differently
Creating Realistic Populations
Extracting a Dynamic Hidden Field from an HTML Form
Understanding the Problem
Extracting and Reinjecting the Hidden Dynamic Value
Going a Little Further with the Form Extractor
Related Links
Extracting and Following a Dynamic URL Generated by your Application
Understanding the Problem
Extracting and Reinjecting the Dynamic URL
Related Links
Extracting Data from an HTTP Request and Using it Later in the Scenario
Understanding the Problem
Extracting Contents and Assigning it to a Variable
Using the Variable
Related Links
Analyzing Errors in the Error Panel
Understanding the Context
Checking a Virtual User
Analyzing Errors on a Scenario Run
Related Links
Comparing Several Test Results
Understanding the Context
Comparing results in the GUI
Comparing results in reports
Related Links
Creating Business Transactions
Understanding the Context
Example Overview
Constructing the Virtual User and the Associated Business Transaction
Building a population and a scenario
Analyzing Business Transaction Results
Related Links
Exporting Data
Understanding the Context
Generating a report
Exporting Results
Exporting as image
Exporting data as CSV File
Related Links
Monitoring an Application Server or a Database
Understanding the Context
Adding and Defining Monitors
Related Links
Testing SOAP Web Services
Understanding the Context
Manually Defining a SOAP Request Based on a WSDL Definition
Manually Defining a SOAP Request From Ground up
Using the Variable Extractor
Recording a SOAP Request
A Quick Tour on Analyzing SOAP Results
Related Links
Using an Additional Load Generator
Understanding the context
Installing a Load Generator
Running a Scenario using Several Load Generators
Related Links
Using Regular Expressions in NeoLoad
Understanding the Context
Related Links
Validating a Server Response
Understanding the Context
Adding Validations to an HTTP response
Related Links
Appendix
Regular Expressions
Overview
Introduction
Using regular expressions
Quick Reference
Special character definitions
Character classes
Pre-defined character classes
Examples
Extracting a URL parameter value
Extracting a Form Parameter Value
Extracting from a text field
Extracting from a hidden field
Extracting from a radio button
Extracting from a checkbox
Extracting from a list
Extracting HTTP headers
Extracting miscellaneous values
Common Errors & Tips
Use of the question mark '?'
Brackets
Spaces
Links to Regex Resources
Links to Regex Testers
Status Code Definitions
Informational 1xx
100 Continue
101 Switching Protocols
Successful 2xx
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
206 Partial Content
Redirection 3xx
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
306 (Unused)
307 Temporary Redirect
Client Error 4xx
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed
Server Error 5xx
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
NeoLoad Status Codes
NeoLoad Javascript API
Class Logger
Synopsis
debug(String)
error(String)
fatal(String)
info(String)
warn(String)
Class RuntimeContext
Synopsis
currentVU
variableManager
fail()
fail(String)
Class VariableManager
Synopsis
changeValue(String)
getValue(String)
parseString(String)
setValue(String, String)
Class VirtualUser
Synopsis
id
name
setCookieForServer(String, String)
stop()