SlideShare a Scribd company logo
PERFORMANCE TESTING TOOL
LOAD RUNNER
ATUL PANT
CHAPTER 1
INTRODUCTION
What'sInside
Introduction
Performance Testing
Need for Automated Performance Testing
Key Types of Performance Testing
Core Activities of Performance Testing
Functional Testing vs. Load Web Testing
Performance Testing - Non Functional Testing Requirements
Non-Functional Testing.
Determine the responsiveness, throughput, reliability, and/or
scalability of a system under a given workload.
Performance testing is the subset of performance engineering,
which is focused on addressing performance issues in the design
and architecture of software product.
*.*.*Goal of Performance Testing*.*.*
o Establishing the benchmark behaviour of the system.
o Meet performance criteria before product release.
“Gathering information about system performance and providing
it to the customer”
Performance Testing
Does the application respond quickly enough for the intended
users?
Will the application handle the expected user load and beyond?
Will the application handle the number of transactions required
by the business?
If it doesn’t perform, then could damage to your company:
o Loss of revenue?
o Loss of customers?
o Loss of productivity?
o Backlog of work?
o Damage to your brand?
Need for Automated Performance Testing
Load Testing
Focus: “Response Time”
Stress Testing
Focus: “Response Time” and “Throughput"
Endurance Testing
Focus: “Memory”
Volume/Capacity
Testing
Focus: “Response Time”
Scalable Testing
Focus: “Response Time” and “Throughput"
Key Types of Performance Testing
Describe core Activities of Performance Testing:
Core Activities of performance testing
Analyze, Report & Retest
Execute Tests
Implement Test Design
Configure Test Environment
Plan and Design Tests
Identify Performance Test Criteria
Identify Test Environment Production Test Environment (Hardware,
Software, Network, etc)
Counter (Response Time, Throughput,
Recourse Utilizations)
Identify Scenarios, Define Test Data, Establish
Metrics
Test Environment, Tools, Resources
Develop Test Scenarios
Run and Monitor Test
Consolidated and Share Test Results
Functionality
Do business processes
function properly after
implementation?
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?
Functional Testing vs. Load Web Testing
Total user base: How many users will have access to this
application?
Concurrent User Load: What is the number of total users who
will access the application together at any given point in time?
Business Processes (Performance Scenarios)
Service Level Agreement (Performance - Service Level
Agreement)
Performance Testing - Non Functional Testing Requirements
CHAPTER 2
GET STARTED
What'sInside
Get Started
What is LoadRunner?
Why LoadRunner?
LoadRunner Component
How LoadRunner Works
LoadRunner Architecture
Load Runner: “The Big Picture”
Types of Protocols Supported
Installing LoadRunner
LoadRunner Terminology
HP LoadRunner is an automated performance and test
automation product from Hewlett-Packard for application load
testing: examining system behaviour and performance, while
generating actual load.
 HP acquired LoadRunner as part of its acquisition of Mercury
Interactive in November 2006.
It commands more than 70% Market Share in load testing
tools.
You can even use it as a “cloud “ based service.
Main Competitors are OpenSTA, WebLoad , NeoLoad etc.
What is LoadRunner?
Benefits of choosing LoadRunner
o LR Credibility - Industry Standard (70 % Market Share)
o Scalable (Add-ins)
o Integration with QTP
o Integration with QC
o Record & Playback, Custom Code, Errors & Exceptions
Why is LoadRunner?
LoadRunner Component
How Load Runner Works
LoadRunner Architecture
Tune
System Based
on Analysis
Analyze
System
Under Load
Phase 5
LoadRunner
V U G E N
LoadRunner
C O N T R O L L E R &
A N A L Y S I S
Run
Scenarios
Phase 4
Create
Scenarios
Phase 3
Create Web
Virtual Users
Phase 2Phase 1
Plan Load
Test
Load Runner: “The Big Picture”
LoadRunner supports the most exhaustive types of protocols as
compared to any other product in the market.
 Distributed Components: COM/DCOM, Corba-Java, and Rmi-Java protocols.
 E-business: FTP, LDAP, Palm, SOAP, Web (HTTP/HTML),Web/Winsocket
Dual Protocol.
 Enterprise Java Beans: EJB Testing and Rmi-Java protocols.
 ERP: Baan, Oracle NCA, Peoplesoft-Tuxedo, SAP, Siebel-DB2 CLI, Siebel
MSSQL, and Siebel Oracle protocols.
 Mailing Services: Internet Messaging (IMAP), MS Exchange (MAPI), POP3,
and SMTP.
 Middleware: Jacada and the Tuxedo (6, 7) protocols.
 Streaming Data: Media Player (MMS) and Real protocols.
 Wireless: For i-Mode, VoiceXML, and WAP protocols.
 Legacy: Terminal Emulation (RTE).
Types of Protocols Supported
Scenarios:
 Using Load Runner, you divide your application performance testing
requirements into scenarios.
 A scenario defines the events that occur during each testing sessions.
 For example, a scenario defines and controls the number of users to
emulate, the actions that they perform, and the machines on which
they run their emulations.
Vusers:
 In a scenario, Load Runner replaces human users with virtual users or
Vusers.
 When you run a scenario, Vusers emulate the actions of human users
submitting input to the server.
 A scenario can contain tens, hundreds, or even thousands of Vusers.
LoadRunner Terminology
Vuser Scripts:
 The actions that a Vuser performs during the scenario are described
in a Vuser script.
 When you run a scenario, each Vuser executes a Vuser script. Vuser
scripts include functions that measure and record the performance of
the server during the scenario.
Transactions:
 To measure the performance of the server, you define transactions.
 Transactions measure the time that it takes for the server to
respond to tasks submitted by Vusers.
LoadRunner Terminology
Rendezvous Points:
 You insert rendezvous points into Vuser scripts to emulate heavy
user load on the server.
 Rendezvous points instruct multiple Vusers to perform tasks at
exactly the same time.
 For example, to emulate peak load on the bank server, you insert a
rendezvous point to instruct 100 Vusers to simultaneously deposit
cash into their accounts.
Controller:
 You use the LoadRunner Controller to manage and maintain your
scenarios.
 Using the Controller, you control all the Vusers in a scenario from a
single workstation.
Load Runner Terminology
Hosts:
 When you execute a scenario, the LoadRunner Controller distributes
each Vuser in the scenario to a host.
 The host is the machine that executes the Vuser script, enabling the
Vuser to emulate the actions of a human user.
Performance Analysis:
 Vuser scripts include functions that measure and record system
performance during load-testing sessions.
 During a scenario run, you can monitor the network and server
resources.
 Following a scenario run, you can view performance analysis data in
reports and graphs.
Load Runner Terminology
 Go to LoadRunner Download location.
 Hit trials & demos dropdown and click HP LOADRUNNER 11.0
EVALUATION.
 You will be asked to sign-in to HP Passport Single Sign On service.
 Download the files.
 Extract the files.
 Install HP Load Runner.
 That’s It. HP Load Runner is now installed. Enjoy!
Installing LoadRunner?
CHAPTER 3
VUGEN: CREATING SCRIPTS
What'sInside
VuGen: Creating Scripts
Introduction to VuGen
Record Application with VuGen
Enhancements
Transaction
Parameterization
Content Checks
Correlation
Manual Correlation
Automatic Correlation
Configuring Run Time Settings
 Virtual users or Vusers emulate the steps of real users. The steps
that Vusers perform are recorded in a Vuser Script.
 VuGen is a protocol based testing tool.
 VuGen not only records Vuser scripts, but also runs them for debug.
 VuGen records sessions on Windows platforms only. However, a
recorded Vuser script can run on both Windows and UNIX platform.
Introduction to VuGen
Protocol level
Recording & Playback
Captures: Communications Events
Replays: Communications Events
Event can be modify based on data:
Data return from server
Program logic within script
User data provided in files
AUT
Client
(User
Actions)
Script Section Used when recording Is executed when
vuser_init Login to a Server The Vuser is initialized (loaded)‫‏‬
Actions Client activity The Vuser is in "Running" status
vuser_end Logoff procedure The Vuser finishes or is stopped
What VuGen can Do?
 Set up recording options
 Record the scripts
 Add Comments
 Insert Start and End Transactions
 Perform Correlation
 Add Checks
 Do Parameterization.
 Add Rendezvous Point
 Insert Load Runner Functions if required.
 Perform Run Time Settings
Each Vuser script contains at least three sections:
Introduction to VuGen
Recoding Mode
 Decide on recording mode.
o For browser application, use
HTML Mode.
o For non-browser application,
use URL Base.
Record Application with VuGen
HTML Mode URL Mode
Intuitive & Easy Not as Intuitive to HTML
Script
Scalable More scalable & effect for
creating a load test
Recoding Options
Single Protocol Script
 Creates a single protocol
Vuser script.
 This is the default
option.
Multiple Protocol Script
 Creates a multiple
protocol Vuser script.
 VuGen displays all of the
available protocols and
allows you to specify
which protocols record.
Record Application with VuGen
 For most Client / Server protocols, the following Screen opens.
 Recording Tool Bar (Floating Tool Bar)‫‏‬.
 To complete recording, Click the stop recording button on the
recording Tool Bar. It will capture a typical business process and saving
the Vuser script.
Record Application with VuGen
Add Transaction
 Used for measuring the response time of user steps.
 Can be done during recording else after recording.
Syntax:
lr_start_transaction("Transaction Name");
lr_end_transaction("Transaction Name", <status>);
Inserting Comments
 To describe an activity or separate two sections.
 Can be added during recording or after recording.
Inserting Rendezvous point
 Introduce concurrency.
Syntax:
lr_rendezvous("Logical Name");
Enhancements - Transaction
What is Parameter?
“A parameter is a placeholder which re-place a recorded value in a Vuser
script. At run time, a value from an external source is replaced with
parameter against recorded value”
Why to Parameter?
If all user will use the same data, then response time will shorter
respect to real system behavior. To over come this parameterize is done.
Parameterization involves the following two tasks:
 Replacing the constant values in the Vuser script with parameters.
 Setting the properties and data source for the parameters.
Enhancements - Parameterization
Types of Parameter
 Date/Time
 File
 Group
 Random Number
 Iteration Number
 Unique Number
 XML
 Vuser ID
 Load generator Name
 User defined function
Enhancements - Parameterization
Parameterization Process
1. Determine which fields to parameterize.
2. Replace recorded value with parameters.
3. Decide which parameter type to use.
4. Choose the data access method and the
number of iterations.
5. Run the Vuser & analyze the results.
Creating Parameters
 Right click on the data to parameterize.
 In a script View: Select a string and select replace with parameter
from the Right click menu.
 Type the Name of the parameter in the appropriate box or select
from the list.
 Select parameter type from the parameter type list. The available
types in the list are Date/Time, file, Group Name, Random
number, Unique number, User defined function, or Vuser ID.
Enhancements - Parameterization
LoadRunner checkpoints - validating response.
Call this as text checkpoint or page validation or response verification,
but these checkpoints you insert for every request helpful in identifying
the failed transactions.
Function to be used as text checkpoint -
Web_reg_find("text=expected string on the page",
LAST);
This function has to be inserted above the http request that you want
to validate.
o Image Checkpoints: This checkpoint will verify the presence of an image on a
page during run-time.
o Text Checkpoint: This checkpoint will verify the presence of a text-string on a
page during run-time.
Enhancements - Content Checks
Correlation is the way handling dynamic values in client server
communication.
The values captured will be send back to server in later steps in the
script.
Correlation is typically used for handling session id's.
Correlation Works
Capture output values from one preceding step.
User captured value as input to processing step.
Correlation Types
Correlation
Automatic Correlation
LR detect & helps to solve
them.
Manually Correlation
LR detect but doesn't provide
direct interface to correlate.
1. Create two scripts of same scenario.
2. Find a dynamic value to capture.
3. Find server's response, containing the dynamic value.
4. Capture the dynamic value in a parameter.
5. Special parameter will be used instead of dynamic value.
6. Replace every occurrence of dynamic value in script with the
parameter.
7. Relay & Verify Changes.
Manual Correlation
In load runner there are three ways of doing Automatic correlation. Those
techniques correlation during recording and correlation after record and
replay.
Automatic Correlation Types
 Auto -Detect Correlation
Detect & correlate dynamic data for supported application
 Rule-Based Correlation
When working with non supported application
 Correlating All
Blindly correlated all dynamic data
Automatic Correlation
Run Logic
Instruct a Vuser to repeat the
run section when you run the
script. Each repetition is known as
iteration.
Number of Iterations
Load Runner repeats all of the
actions, the specified number of
times.
Pacing
The pace tells the Vuser how long
to wait between iterations of
Vuser.
Configuring Run Time Settings
Log
Vusers log information about themselves and their communication between
server.
Two types of Logs
 Standard
 Extended
Think Time
VuGen allows you to use the recorded think time, ignore it, or use a value
related to the recorded time.
Miscellaneous
 Error Handling
 Multithreading
 Automatic Transactions
Configuring Run Time Settings
CHAPTER 4
CONTROLLER: CREATING SCENARIOS
What'sInside
Controller: Creating Scenarios
Introducing to Controller
Creating Scenarios
Manual Scenario
Goal-Oriented Scenario
Manual Scenario v/s Goal-Oriented Scenario
Load Generator
Running and Monitoring Scenario
Service Level Agreement - SLA
What is Scenario?
A scenario defines the events that occur during each testing session.
Thus, for example, a scenario defines and controls the number of users to
emulate, the actions that they perform, and the machines on which they
run their emulations.
Scenarios Includes:
 Generate scenarios & run scenarios.
 Create Vusers
 Add Load generators
 Schedule our tests
“LoadRunner Controller is used for creating Scenarios”
Introducing the Controller
Manual Scenario
Manage your Load Test by specifying the number of Virtual users to
run.
o Manage load test by specifying the number of virtual users to run.
o Percentage mode to distribute the total number of Vuser among scripts
based on a percentage specified.
Goal-Oriented Scenario
Allow Load Runner Controller to create a Scenario based on the
goals you specify.
o The number of concurrent Vusers
o The number of hits per second
o The number of transactions per second
o The number of pages per minute
o The transaction response time that you want your scenario
Creating Scenarios
Step 1: Launching LoadRunner & it’s Controller Module.
a) Start” > “Programs” > “LoadRunner” > “LoadRunner”.
b) Open the LoadRunner Controller by clicking “Run Load Tests” In
the “Load Testing tab”.
Manual Scenario
Step 2: Making a selection of method of creation of scenario.
a) Manual Scenario (Select)
b) Goal-Oriented Scenario
Step 3: Adding a script to the load test: Select a script out of
the list of Scripts already available.
Step 4: Defining the group attributes for the script.
a) Locate the desired script.
b) Change Scenario group name.
c) Provide Vusers quantity for the group.
Manual Scenario
Step 5: Adding a load generator for running the Vusers.
a) Use already available Load Generator.
b) Creating & using a new Load Generator.
Manual Scenario
Step 6: Testing the Load Generator Connection.
a) Select “localhost” and click “Connect”.
b) Check connection with status changes from “Down” to “Ready”.
Step 7: Scheduling of scenario in schedule pane of the Controller
window.
Manual Scenario
Step 8: Setting the schedule actions definitions in Actions Grid.
a) Initialize
b) Start Vusers
c) Duration
d) End Vusers
Step 9: Initializing of Vusers.
a) Initialize all Vusers simultaneously
b) Initialize each Vuser at specified interval
c) Initialize each Vuser just before it runs
Manual Scenario
Step 10: Starting of Vusers at specified Intervals.
Step 11: Specifying a duration through.
“Interactive Schedule Graph” a duration is defined so that the
Vusers keep on doing the scheduled action for a specific period.
Manual Scenario
Step 12: Stopping of Vusers.
Step 13: Configuring the Run-time settings.
a) Run Logic to define the number of times a user repeats a group of actions.
b) Pacing to define the time to wait before repeating an action.
c) Log to define the type of information needed to be captured during the test.
d) Think Time to define the time a user stops to think between steps.
e) Speed Simulation to define network connections like modem, DSL or cable.
f) Browser Emulation to define different browsers.
g) Content Check for automatically detecting user-defined errors.
Manual Scenario
Step 14: Enabling think time.
Step 15: Enabling the logging option.
Manual Scenario
Step 16: Configuring the Windows Resources monitor.
a) Opening of the Run view
b) Selection of monitored server
Manual Scenario
Goal-Oriented Scenario
Creating Scenario
 Defining Scenario Goals
 Assigning Properties to Scripts
 Run Scripts
Manual Scenario v/s Goal-Oriented Scenario
Manual Scenarios Goal-Oriented Scenario
Used to simulate the real time
loads based on the fixed time and
fixed number of virtual users.
Used for simulating the load, based
on the objectives defined by the
customer expected goals.
The duration is fixed. Since the
time clearly defined in real world
schedules.
The duration is always much more
than the duration mentioned in
goal oriented scenarios.
Acceleration and deceleration of the
users will happen based on the
schedule design.
Acceleration and deceleration of the
users will happen automatically,
based on the goal defined.
Overview
Load Generator is a machine that serves as the host for running Vusers.
Adding Load Generator
Click the generators button to open the dialogue box.
Now click the add button to open the Add load generator dialogue box.
Enter the name and load generator platform which you want to add.
A machine must have installed LoadRunner agent to use as a Load
Generator.
Load Generator
Running and Monitoring Scenario
Running a Scenario
The following procedure outlines how to run a scenario:
Open an existing scenario or create a new one.
Configure and schedule the scenario.
Set the results directory.
Run and monitor the scenario.
Running and Monitoring Scenario
Monitoring a Scenario
LoadRunner provides the following online monitors:
o Run-Time
o Transaction
o Web Resource
o System Resource
o Network Delay
o Firewall
o Web Server Resource
o Web Application Server Resource
o Database Server Resource
o Streaming Media
o ERP Server Resource
o Java Performance
Overview
Service level agreements (SLAs) enable you to define goals for your
load test scenario.
During a scenario run, the Controller measures the performance and
collects data.
Analysis compares this data against thresholds defined in the SLAs.
Service Level Agreement - SLA
Types of SLA
SLA status determined at time intervals over a timeline. Analysis
displays SLA statuses at set time intervals—for example, every 10
seconds—over a timeline within the run.
o SLAs for Average Transaction Response Time
o SLAs for Errors Per Second.
SLA status determined over the whole run. Analysis displays a single
SLA status for the whole scenario run.
o Total Hits per run
o Average Hits (hits/second) per run
o Total Throughput (bytes) per run
o Average Throughput (bytes/second) per run
Service Level Agreement - SLA
CHAPTER 5
ANALYSIS: ANALYZING RESULTS
What'sInside
Analysis: Analyzing Results
Introduction to Analysis
Analyzer Window at a Glance
Available Graphs
Graph Configuration
Interpreting Graphs and Identifying Bottlenecks
Analysis provides graphs and reports to help you analyze the
performance of your system.
 The aim of the analysis session is to find the failures in your system's
performance and then pinpoint the source of these failures.
 Were the test expectations met? What was the transaction response
time on the user’s end under load? Did the SLA meet or deviate from
its goals? What was the average transaction response time of the
transactions?
 What parts of the system could have contributed to the decline in
performance? What was the response time of the network and servers?
 Can you find a possible cause by correlating the transaction times and
backend monitor matrix?
Overview Analysis
Analyzer Window at a Glance
Session Explorer pane: In the upper left pane, Analysis shows the reports
and graphs that are open for viewing. From here you can display new
reports or graphs that do not appear when Analysis opens, or delete
ones that you no longer want to view.
Properties window pane: In the lower left pane, the Properties window
displays the details of the graph or report you selected in the Session
Explorer. Fields that appear in black are editable.
Graph Viewing Area: In the upper right pane, Analysis displays the
graphs. By default, the Summary Report is displayed in this area when
you open a session.
Graph Legend: In the lower right pane, you can view data from the
selected graph.
Analyzer Window at a Glance
User-Defined Data Point Graphs : Provide information about the custom data
points that were gathered by the online monitor.
System Resource Graphs : Provide statistics relating to the system resources
that were monitored during the scenario using the online monitor.
Network Monitor Graphs : Provide information about the network delays.
Firewall Server Monitor Graphs : Provide information about firewall server
resource usage.
Web Server Resource Graphs : Provide information about the resource usage
for the Apache, iPlanet/Netscape, iPlanet(SNMP), and MS IIS Web servers.
Available Graphs
Available Graphs
Transactions:
o Average Transaction Response Time
o Transactions per Second
o TPS (Transactions Per Second)
o Total Transactions per Second
o Transaction Summary
o Transaction Performance Summary
o Transaction Response Time Under Load
Web Resources:
o Hits per Second
o Hits Summary
o Throughput
o Throughput Summary
o HTTP Responses per Second
o Connections
o Connections per Second
o SSLs Per Second
Vusers:
o Running Vusers
System Resources:
o UNIX CPU Util
o UNIX Avg Load
o UNIX Paging rate
Web Server Resources:
o Apache CPU Usage
o Apache Hits/sec
o Apache Kbytes Sent/sec
Web Page Breakdown
o Web Page Breakdown
o Page Component Breakdown
o Download Component Size (KB)
User-Defined Data Point Graphs : Provide information about the custom data
points that were gathered by the online monitor.
System Resource Graphs : Provide statistics relating to the system resources
that were monitored during the scenario using the online monitor.
Network Monitor Graphs : Provide information about the network delays.
Firewall Server Monitor Graphs : Provide information about firewall server
resource usage.
Web Server Resource Graphs : Provide information about the resource usage
for the Apache, iPlanet/Netscape, iPlanet(SNMP), and MS IIS Web servers.
Graph Configuration
Set Global Filter
Set Filter By - Filter Condition, Group by
Merge Graphs
Auto-Correlate Graphs
Cross Results
Report generation
Using Templates
HTML Report
Customizing Templates
Graph Configuration
Graph analysis
Introduction to Bottlenecks
Types of bottlenecks
Memory Bottlenecks
CPU Bottlenecks
Brief on Disk and Network Bottleneck
Database Bottlenecks
Interpreting Graphs and Identifying Bottlenecks
BEST PRACTICE
What'sInside
Best Practices
Best Practices for Performance Testing - Do
Best Practices for Performance Testing - Don’t
Clear the application and database logs after each performance test.
Excessively large log files may artificially skew the performance results.
Identify the correct server software and hardware to mirror your
production environment.
Use a single graphical user interface (GUI) client to capture end-user
response time while a load is generated on the system.
Include a buffer time between the incremental increases of users during
a load test.
Use different data parameters for each simulated user to create a
more realistic load simulation.
Monitor all computers involved in the test, including the client that
generates the load. This is important because you should not overly
stress the client.
Prioritize your scenarios according to critical functionality and high-
volume transactions.
Use a zero think time if you need to fire concurrent requests,. This
can help you identify bottleneck issues.
Stress test critical components of the system to assess their
independent thresholds.
Best Practices for Performance Testing - Do
Do not allow the test system resources to cross resource threshold
limits by a significant margin during load testing, because this distorts
the data in your results.
Do not run tests in live production environments that have other
network traffic. Use an isolated test environment that is
representative of the actual production environment.
Do not try to break the system during a load test. The intent of the
load test is not to break the system. The intent is to observe
performance under expected usage conditions. You can stress test to
determine the most likely modes of failure so they can be addressed or
mitigated.
Do not place too much stress on the client test computers.
Best Practices for Performance Testing - Don’t
THANK YOU

More Related Content

What's hot (20)

PPTX
Performance Testing using LoadRunner
Kumar Gupta
 
PPTX
QSpiders - Introduction to HP Load Runner
Qspiders - Software Testing Training Institute
 
PPTX
Load Runner
Shama Ahsan
 
PPT
Performance Testing With Loadrunner
vladimir zaremba
 
PPT
Loadrunner presentation
medsherb
 
PPT
Performance testing using hp load runner
Return on Intelligence
 
PPTX
Introduction to performance testing
Richard Bishop
 
PDF
Introduction to jmeter
test test
 
PPTX
An Introduction to Performance Testing
SWAAM Tech
 
PDF
Performance testing presentation
Belatrix Software
 
PPTX
Performance testing
Jyoti Babbar
 
PDF
Performance Requirement Gathering
Atul Pant
 
PPTX
Load and performance testing
Qualitest
 
PDF
Jmeter Performance Testing
Atul Pant
 
PPT
Performance testing : An Overview
sharadkjain
 
PPTX
Introduction to performance testing
Tharinda Liyanage
 
PPTX
Types of performance testing
NaveenKumar Namachivayam
 
PPT
Getting start with Performance Testing
Yogesh Deshmukh
 
PPT
Performance testing jmeter
Bhojan Rajan
 
PPTX
Postman. From simple API test to end to end scenario
HYS Enterprise
 
Performance Testing using LoadRunner
Kumar Gupta
 
QSpiders - Introduction to HP Load Runner
Qspiders - Software Testing Training Institute
 
Load Runner
Shama Ahsan
 
Performance Testing With Loadrunner
vladimir zaremba
 
Loadrunner presentation
medsherb
 
Performance testing using hp load runner
Return on Intelligence
 
Introduction to performance testing
Richard Bishop
 
Introduction to jmeter
test test
 
An Introduction to Performance Testing
SWAAM Tech
 
Performance testing presentation
Belatrix Software
 
Performance testing
Jyoti Babbar
 
Performance Requirement Gathering
Atul Pant
 
Load and performance testing
Qualitest
 
Jmeter Performance Testing
Atul Pant
 
Performance testing : An Overview
sharadkjain
 
Introduction to performance testing
Tharinda Liyanage
 
Types of performance testing
NaveenKumar Namachivayam
 
Getting start with Performance Testing
Yogesh Deshmukh
 
Performance testing jmeter
Bhojan Rajan
 
Postman. From simple API test to end to end scenario
HYS Enterprise
 

Viewers also liked (15)

PPT
Hp Loadrunner
guestb3416f
 
PPTX
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
Kamran Khan
 
PPTX
What is Loadrunner ?
Guru99
 
PDF
Loadrunner vs Jmeter
Atul Pant
 
PPT
Performance Testing
sharmaparish
 
PPTX
HP LoadRunner - What it is and How it works
Dhrumil Patel
 
DOCX
Performance testing interview questions and answers
Garuda Trainings
 
PPTX
QSpiders - Installation and Brief Dose of Load Runner
Qspiders - Software Testing Training Institute
 
PDF
Advanced visualization
Deepu S Nath
 
PDF
Performance Testing Insights
Deepu S Nath
 
PDF
Ginsbourg.com - Performance and Load Test Report Template LTR 1.2
Shay Ginsbourg
 
PDF
Ginsbourg.com - Performance and Load Test Report Template LTR 1.5
Shay Ginsbourg
 
PPTX
QSpiders - Introduction to Performance Testing
Qspiders - Software Testing Training Institute
 
PDF
Load testing with Blitz
Lindsay Holmwood
 
PPTX
Load Runner
Vladimir Soghoyan
 
Hp Loadrunner
guestb3416f
 
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
Kamran Khan
 
What is Loadrunner ?
Guru99
 
Loadrunner vs Jmeter
Atul Pant
 
Performance Testing
sharmaparish
 
HP LoadRunner - What it is and How it works
Dhrumil Patel
 
Performance testing interview questions and answers
Garuda Trainings
 
QSpiders - Installation and Brief Dose of Load Runner
Qspiders - Software Testing Training Institute
 
Advanced visualization
Deepu S Nath
 
Performance Testing Insights
Deepu S Nath
 
Ginsbourg.com - Performance and Load Test Report Template LTR 1.2
Shay Ginsbourg
 
Ginsbourg.com - Performance and Load Test Report Template LTR 1.5
Shay Ginsbourg
 
QSpiders - Introduction to Performance Testing
Qspiders - Software Testing Training Institute
 
Load testing with Blitz
Lindsay Holmwood
 
Load Runner
Vladimir Soghoyan
 
Ad

Similar to LoadRunner Performance Testing (20)

PPT
advanced_load_runner.ppt
SunilKumar61580
 
PPT
Performance testing with loadrunner by kc
krishna chaitanya
 
PPT
Advanced Load Runner
telab
 
PPTX
QSpiders - Simple Recording and Configuration of recording options for HP Loa...
Qspiders - Software Testing Training Institute
 
DOCX
Load Runner Online Training
QEdge Tech
 
PPT
Load runner 8.0
medsherb
 
PPT
Performance testing material
Keylabstraining Bangalore
 
DOCX
Loadrunner interview questions and answers
Garuda Trainings
 
PPSX
HP LoadRunner
Fayis-QA
 
PDF
Load Runner Methodology to Performance Testing
ijtsrd
 
PPTX
PERFORMANCE TESTING USING LOAD RUNNER
AjithaG9
 
PPTX
Introduction to Performance Testing & Loadrunner
Aisha Mazhar
 
PDF
Load runner12.00 tutorial
Harry Cordero
 
PPTX
Load testing
Muhammad Faheem
 
PPTX
Software Testing includes Performance testing with Load Runner and the JMeter
Hima Bindu Kosuru
 
PPT
Mercury load runner
Subrat Srivastava
 
PDF
1. PERFORMANCE TESTING ON WEB APPLICATION THROUGH HP LOAD1
Jatin Aggarwal
 
PDF
1. performance testing on web application through hp load1
Jatin Aggarwal
 
DOCX
Seminar report
Pallav Kumar
 
DOC
Loadrunner Online Training
Srihitha Technologies
 
advanced_load_runner.ppt
SunilKumar61580
 
Performance testing with loadrunner by kc
krishna chaitanya
 
Advanced Load Runner
telab
 
QSpiders - Simple Recording and Configuration of recording options for HP Loa...
Qspiders - Software Testing Training Institute
 
Load Runner Online Training
QEdge Tech
 
Load runner 8.0
medsherb
 
Performance testing material
Keylabstraining Bangalore
 
Loadrunner interview questions and answers
Garuda Trainings
 
HP LoadRunner
Fayis-QA
 
Load Runner Methodology to Performance Testing
ijtsrd
 
PERFORMANCE TESTING USING LOAD RUNNER
AjithaG9
 
Introduction to Performance Testing & Loadrunner
Aisha Mazhar
 
Load runner12.00 tutorial
Harry Cordero
 
Load testing
Muhammad Faheem
 
Software Testing includes Performance testing with Load Runner and the JMeter
Hima Bindu Kosuru
 
Mercury load runner
Subrat Srivastava
 
1. PERFORMANCE TESTING ON WEB APPLICATION THROUGH HP LOAD1
Jatin Aggarwal
 
1. performance testing on web application through hp load1
Jatin Aggarwal
 
Seminar report
Pallav Kumar
 
Loadrunner Online Training
Srihitha Technologies
 
Ad

More from Atul Pant (8)

PDF
Sql
Atul Pant
 
PDF
Performance Test Plan - Sample 2
Atul Pant
 
PDF
Performance Test Plan - Sample 1
Atul Pant
 
PDF
Testing check list
Atul Pant
 
PDF
Payment gateway testing
Atul Pant
 
PDF
Cloud computing
Atul Pant
 
PDF
Unix command
Atul Pant
 
PDF
E commerce Testing
Atul Pant
 
Performance Test Plan - Sample 2
Atul Pant
 
Performance Test Plan - Sample 1
Atul Pant
 
Testing check list
Atul Pant
 
Payment gateway testing
Atul Pant
 
Cloud computing
Atul Pant
 
Unix command
Atul Pant
 
E commerce Testing
Atul Pant
 

Recently uploaded (20)

PPTX
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PPTX
Smart Factory Monitoring IIoT in Machine and Production Operations.pptx
Rejig Digital
 
PDF
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
PDF
Bridging CAD, IBM TRIRIGA & GIS with FME: The Portland Public Schools Case
Safe Software
 
PDF
Unlocking FME Flow’s Potential: Architecture Design for Modern Enterprises
Safe Software
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PPTX
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
PDF
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
PDF
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
PDF
Simplify Your FME Flow Setup: Fault-Tolerant Deployment Made Easy with Packer...
Safe Software
 
PDF
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
PDF
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
PDF
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
PDF
Understanding AI Optimization AIO, LLMO, and GEO
CoDigital
 
PDF
TrustArc Webinar - Navigating APAC Data Privacy Laws: Compliance & Challenges
TrustArc
 
PPTX
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PPTX
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
Smart Factory Monitoring IIoT in Machine and Production Operations.pptx
Rejig Digital
 
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
Bridging CAD, IBM TRIRIGA & GIS with FME: The Portland Public Schools Case
Safe Software
 
Unlocking FME Flow’s Potential: Architecture Design for Modern Enterprises
Safe Software
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
Simplify Your FME Flow Setup: Fault-Tolerant Deployment Made Easy with Packer...
Safe Software
 
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
Understanding AI Optimization AIO, LLMO, and GEO
CoDigital
 
TrustArc Webinar - Navigating APAC Data Privacy Laws: Compliance & Challenges
TrustArc
 
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
Kubernetes - Architecture & Components.pdf
geethak285
 
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 

LoadRunner Performance Testing

  • 1. PERFORMANCE TESTING TOOL LOAD RUNNER ATUL PANT
  • 3. What'sInside Introduction Performance Testing Need for Automated Performance Testing Key Types of Performance Testing Core Activities of Performance Testing Functional Testing vs. Load Web Testing Performance Testing - Non Functional Testing Requirements
  • 4. Non-Functional Testing. Determine the responsiveness, throughput, reliability, and/or scalability of a system under a given workload. Performance testing is the subset of performance engineering, which is focused on addressing performance issues in the design and architecture of software product. *.*.*Goal of Performance Testing*.*.* o Establishing the benchmark behaviour of the system. o Meet performance criteria before product release. “Gathering information about system performance and providing it to the customer” Performance Testing
  • 5. Does the application respond quickly enough for the intended users? Will the application handle the expected user load and beyond? Will the application handle the number of transactions required by the business? If it doesn’t perform, then could damage to your company: o Loss of revenue? o Loss of customers? o Loss of productivity? o Backlog of work? o Damage to your brand? Need for Automated Performance Testing
  • 6. Load Testing Focus: “Response Time” Stress Testing Focus: “Response Time” and “Throughput" Endurance Testing Focus: “Memory” Volume/Capacity Testing Focus: “Response Time” Scalable Testing Focus: “Response Time” and “Throughput" Key Types of Performance Testing
  • 7. Describe core Activities of Performance Testing: Core Activities of performance testing Analyze, Report & Retest Execute Tests Implement Test Design Configure Test Environment Plan and Design Tests Identify Performance Test Criteria Identify Test Environment Production Test Environment (Hardware, Software, Network, etc) Counter (Response Time, Throughput, Recourse Utilizations) Identify Scenarios, Define Test Data, Establish Metrics Test Environment, Tools, Resources Develop Test Scenarios Run and Monitor Test Consolidated and Share Test Results
  • 8. Functionality Do business processes function properly after implementation? 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? Functional Testing vs. Load Web Testing
  • 9. Total user base: How many users will have access to this application? Concurrent User Load: What is the number of total users who will access the application together at any given point in time? Business Processes (Performance Scenarios) Service Level Agreement (Performance - Service Level Agreement) Performance Testing - Non Functional Testing Requirements
  • 11. What'sInside Get Started What is LoadRunner? Why LoadRunner? LoadRunner Component How LoadRunner Works LoadRunner Architecture Load Runner: “The Big Picture” Types of Protocols Supported Installing LoadRunner LoadRunner Terminology
  • 12. HP LoadRunner is an automated performance and test automation product from Hewlett-Packard for application load testing: examining system behaviour and performance, while generating actual load.  HP acquired LoadRunner as part of its acquisition of Mercury Interactive in November 2006. It commands more than 70% Market Share in load testing tools. You can even use it as a “cloud “ based service. Main Competitors are OpenSTA, WebLoad , NeoLoad etc. What is LoadRunner?
  • 13. Benefits of choosing LoadRunner o LR Credibility - Industry Standard (70 % Market Share) o Scalable (Add-ins) o Integration with QTP o Integration with QC o Record & Playback, Custom Code, Errors & Exceptions Why is LoadRunner?
  • 17. Tune System Based on Analysis Analyze System Under Load Phase 5 LoadRunner V U G E N LoadRunner C O N T R O L L E R & A N A L Y S I S Run Scenarios Phase 4 Create Scenarios Phase 3 Create Web Virtual Users Phase 2Phase 1 Plan Load Test Load Runner: “The Big Picture”
  • 18. LoadRunner supports the most exhaustive types of protocols as compared to any other product in the market.  Distributed Components: COM/DCOM, Corba-Java, and Rmi-Java protocols.  E-business: FTP, LDAP, Palm, SOAP, Web (HTTP/HTML),Web/Winsocket Dual Protocol.  Enterprise Java Beans: EJB Testing and Rmi-Java protocols.  ERP: Baan, Oracle NCA, Peoplesoft-Tuxedo, SAP, Siebel-DB2 CLI, Siebel MSSQL, and Siebel Oracle protocols.  Mailing Services: Internet Messaging (IMAP), MS Exchange (MAPI), POP3, and SMTP.  Middleware: Jacada and the Tuxedo (6, 7) protocols.  Streaming Data: Media Player (MMS) and Real protocols.  Wireless: For i-Mode, VoiceXML, and WAP protocols.  Legacy: Terminal Emulation (RTE). Types of Protocols Supported
  • 19. Scenarios:  Using Load Runner, you divide your application performance testing requirements into scenarios.  A scenario defines the events that occur during each testing sessions.  For example, a scenario defines and controls the number of users to emulate, the actions that they perform, and the machines on which they run their emulations. Vusers:  In a scenario, Load Runner replaces human users with virtual users or Vusers.  When you run a scenario, Vusers emulate the actions of human users submitting input to the server.  A scenario can contain tens, hundreds, or even thousands of Vusers. LoadRunner Terminology
  • 20. Vuser Scripts:  The actions that a Vuser performs during the scenario are described in a Vuser script.  When you run a scenario, each Vuser executes a Vuser script. Vuser scripts include functions that measure and record the performance of the server during the scenario. Transactions:  To measure the performance of the server, you define transactions.  Transactions measure the time that it takes for the server to respond to tasks submitted by Vusers. LoadRunner Terminology
  • 21. Rendezvous Points:  You insert rendezvous points into Vuser scripts to emulate heavy user load on the server.  Rendezvous points instruct multiple Vusers to perform tasks at exactly the same time.  For example, to emulate peak load on the bank server, you insert a rendezvous point to instruct 100 Vusers to simultaneously deposit cash into their accounts. Controller:  You use the LoadRunner Controller to manage and maintain your scenarios.  Using the Controller, you control all the Vusers in a scenario from a single workstation. Load Runner Terminology
  • 22. Hosts:  When you execute a scenario, the LoadRunner Controller distributes each Vuser in the scenario to a host.  The host is the machine that executes the Vuser script, enabling the Vuser to emulate the actions of a human user. Performance Analysis:  Vuser scripts include functions that measure and record system performance during load-testing sessions.  During a scenario run, you can monitor the network and server resources.  Following a scenario run, you can view performance analysis data in reports and graphs. Load Runner Terminology
  • 23.  Go to LoadRunner Download location.  Hit trials & demos dropdown and click HP LOADRUNNER 11.0 EVALUATION.  You will be asked to sign-in to HP Passport Single Sign On service.  Download the files.  Extract the files.  Install HP Load Runner.  That’s It. HP Load Runner is now installed. Enjoy! Installing LoadRunner?
  • 25. What'sInside VuGen: Creating Scripts Introduction to VuGen Record Application with VuGen Enhancements Transaction Parameterization Content Checks Correlation Manual Correlation Automatic Correlation Configuring Run Time Settings
  • 26.  Virtual users or Vusers emulate the steps of real users. The steps that Vusers perform are recorded in a Vuser Script.  VuGen is a protocol based testing tool.  VuGen not only records Vuser scripts, but also runs them for debug.  VuGen records sessions on Windows platforms only. However, a recorded Vuser script can run on both Windows and UNIX platform. Introduction to VuGen Protocol level Recording & Playback Captures: Communications Events Replays: Communications Events Event can be modify based on data: Data return from server Program logic within script User data provided in files AUT Client (User Actions)
  • 27. Script Section Used when recording Is executed when vuser_init Login to a Server The Vuser is initialized (loaded)‫‏‬ Actions Client activity The Vuser is in "Running" status vuser_end Logoff procedure The Vuser finishes or is stopped What VuGen can Do?  Set up recording options  Record the scripts  Add Comments  Insert Start and End Transactions  Perform Correlation  Add Checks  Do Parameterization.  Add Rendezvous Point  Insert Load Runner Functions if required.  Perform Run Time Settings Each Vuser script contains at least three sections: Introduction to VuGen
  • 28. Recoding Mode  Decide on recording mode. o For browser application, use HTML Mode. o For non-browser application, use URL Base. Record Application with VuGen HTML Mode URL Mode Intuitive & Easy Not as Intuitive to HTML Script Scalable More scalable & effect for creating a load test Recoding Options
  • 29. Single Protocol Script  Creates a single protocol Vuser script.  This is the default option. Multiple Protocol Script  Creates a multiple protocol Vuser script.  VuGen displays all of the available protocols and allows you to specify which protocols record. Record Application with VuGen
  • 30.  For most Client / Server protocols, the following Screen opens.  Recording Tool Bar (Floating Tool Bar)‫‏‬.  To complete recording, Click the stop recording button on the recording Tool Bar. It will capture a typical business process and saving the Vuser script. Record Application with VuGen
  • 31. Add Transaction  Used for measuring the response time of user steps.  Can be done during recording else after recording. Syntax: lr_start_transaction("Transaction Name"); lr_end_transaction("Transaction Name", <status>); Inserting Comments  To describe an activity or separate two sections.  Can be added during recording or after recording. Inserting Rendezvous point  Introduce concurrency. Syntax: lr_rendezvous("Logical Name"); Enhancements - Transaction
  • 32. What is Parameter? “A parameter is a placeholder which re-place a recorded value in a Vuser script. At run time, a value from an external source is replaced with parameter against recorded value” Why to Parameter? If all user will use the same data, then response time will shorter respect to real system behavior. To over come this parameterize is done. Parameterization involves the following two tasks:  Replacing the constant values in the Vuser script with parameters.  Setting the properties and data source for the parameters. Enhancements - Parameterization
  • 33. Types of Parameter  Date/Time  File  Group  Random Number  Iteration Number  Unique Number  XML  Vuser ID  Load generator Name  User defined function Enhancements - Parameterization Parameterization Process 1. Determine which fields to parameterize. 2. Replace recorded value with parameters. 3. Decide which parameter type to use. 4. Choose the data access method and the number of iterations. 5. Run the Vuser & analyze the results.
  • 34. Creating Parameters  Right click on the data to parameterize.  In a script View: Select a string and select replace with parameter from the Right click menu.  Type the Name of the parameter in the appropriate box or select from the list.  Select parameter type from the parameter type list. The available types in the list are Date/Time, file, Group Name, Random number, Unique number, User defined function, or Vuser ID. Enhancements - Parameterization
  • 35. LoadRunner checkpoints - validating response. Call this as text checkpoint or page validation or response verification, but these checkpoints you insert for every request helpful in identifying the failed transactions. Function to be used as text checkpoint - Web_reg_find("text=expected string on the page", LAST); This function has to be inserted above the http request that you want to validate. o Image Checkpoints: This checkpoint will verify the presence of an image on a page during run-time. o Text Checkpoint: This checkpoint will verify the presence of a text-string on a page during run-time. Enhancements - Content Checks
  • 36. Correlation is the way handling dynamic values in client server communication. The values captured will be send back to server in later steps in the script. Correlation is typically used for handling session id's. Correlation Works Capture output values from one preceding step. User captured value as input to processing step. Correlation Types Correlation Automatic Correlation LR detect & helps to solve them. Manually Correlation LR detect but doesn't provide direct interface to correlate.
  • 37. 1. Create two scripts of same scenario. 2. Find a dynamic value to capture. 3. Find server's response, containing the dynamic value. 4. Capture the dynamic value in a parameter. 5. Special parameter will be used instead of dynamic value. 6. Replace every occurrence of dynamic value in script with the parameter. 7. Relay & Verify Changes. Manual Correlation
  • 38. In load runner there are three ways of doing Automatic correlation. Those techniques correlation during recording and correlation after record and replay. Automatic Correlation Types  Auto -Detect Correlation Detect & correlate dynamic data for supported application  Rule-Based Correlation When working with non supported application  Correlating All Blindly correlated all dynamic data Automatic Correlation
  • 39. Run Logic Instruct a Vuser to repeat the run section when you run the script. Each repetition is known as iteration. Number of Iterations Load Runner repeats all of the actions, the specified number of times. Pacing The pace tells the Vuser how long to wait between iterations of Vuser. Configuring Run Time Settings
  • 40. Log Vusers log information about themselves and their communication between server. Two types of Logs  Standard  Extended Think Time VuGen allows you to use the recorded think time, ignore it, or use a value related to the recorded time. Miscellaneous  Error Handling  Multithreading  Automatic Transactions Configuring Run Time Settings
  • 42. What'sInside Controller: Creating Scenarios Introducing to Controller Creating Scenarios Manual Scenario Goal-Oriented Scenario Manual Scenario v/s Goal-Oriented Scenario Load Generator Running and Monitoring Scenario Service Level Agreement - SLA
  • 43. What is Scenario? A scenario defines the events that occur during each testing session. Thus, for example, a scenario defines and controls the number of users to emulate, the actions that they perform, and the machines on which they run their emulations. Scenarios Includes:  Generate scenarios & run scenarios.  Create Vusers  Add Load generators  Schedule our tests “LoadRunner Controller is used for creating Scenarios” Introducing the Controller
  • 44. Manual Scenario Manage your Load Test by specifying the number of Virtual users to run. o Manage load test by specifying the number of virtual users to run. o Percentage mode to distribute the total number of Vuser among scripts based on a percentage specified. Goal-Oriented Scenario Allow Load Runner Controller to create a Scenario based on the goals you specify. o The number of concurrent Vusers o The number of hits per second o The number of transactions per second o The number of pages per minute o The transaction response time that you want your scenario Creating Scenarios
  • 45. Step 1: Launching LoadRunner & it’s Controller Module. a) Start” > “Programs” > “LoadRunner” > “LoadRunner”. b) Open the LoadRunner Controller by clicking “Run Load Tests” In the “Load Testing tab”. Manual Scenario
  • 46. Step 2: Making a selection of method of creation of scenario. a) Manual Scenario (Select) b) Goal-Oriented Scenario Step 3: Adding a script to the load test: Select a script out of the list of Scripts already available. Step 4: Defining the group attributes for the script. a) Locate the desired script. b) Change Scenario group name. c) Provide Vusers quantity for the group. Manual Scenario
  • 47. Step 5: Adding a load generator for running the Vusers. a) Use already available Load Generator. b) Creating & using a new Load Generator. Manual Scenario
  • 48. Step 6: Testing the Load Generator Connection. a) Select “localhost” and click “Connect”. b) Check connection with status changes from “Down” to “Ready”. Step 7: Scheduling of scenario in schedule pane of the Controller window. Manual Scenario
  • 49. Step 8: Setting the schedule actions definitions in Actions Grid. a) Initialize b) Start Vusers c) Duration d) End Vusers Step 9: Initializing of Vusers. a) Initialize all Vusers simultaneously b) Initialize each Vuser at specified interval c) Initialize each Vuser just before it runs Manual Scenario
  • 50. Step 10: Starting of Vusers at specified Intervals. Step 11: Specifying a duration through. “Interactive Schedule Graph” a duration is defined so that the Vusers keep on doing the scheduled action for a specific period. Manual Scenario
  • 51. Step 12: Stopping of Vusers. Step 13: Configuring the Run-time settings. a) Run Logic to define the number of times a user repeats a group of actions. b) Pacing to define the time to wait before repeating an action. c) Log to define the type of information needed to be captured during the test. d) Think Time to define the time a user stops to think between steps. e) Speed Simulation to define network connections like modem, DSL or cable. f) Browser Emulation to define different browsers. g) Content Check for automatically detecting user-defined errors. Manual Scenario
  • 52. Step 14: Enabling think time. Step 15: Enabling the logging option. Manual Scenario
  • 53. Step 16: Configuring the Windows Resources monitor. a) Opening of the Run view b) Selection of monitored server Manual Scenario
  • 54. Goal-Oriented Scenario Creating Scenario  Defining Scenario Goals  Assigning Properties to Scripts  Run Scripts
  • 55. Manual Scenario v/s Goal-Oriented Scenario Manual Scenarios Goal-Oriented Scenario Used to simulate the real time loads based on the fixed time and fixed number of virtual users. Used for simulating the load, based on the objectives defined by the customer expected goals. The duration is fixed. Since the time clearly defined in real world schedules. The duration is always much more than the duration mentioned in goal oriented scenarios. Acceleration and deceleration of the users will happen based on the schedule design. Acceleration and deceleration of the users will happen automatically, based on the goal defined.
  • 56. Overview Load Generator is a machine that serves as the host for running Vusers. Adding Load Generator Click the generators button to open the dialogue box. Now click the add button to open the Add load generator dialogue box. Enter the name and load generator platform which you want to add. A machine must have installed LoadRunner agent to use as a Load Generator. Load Generator
  • 57. Running and Monitoring Scenario Running a Scenario The following procedure outlines how to run a scenario: Open an existing scenario or create a new one. Configure and schedule the scenario. Set the results directory. Run and monitor the scenario.
  • 58. Running and Monitoring Scenario Monitoring a Scenario LoadRunner provides the following online monitors: o Run-Time o Transaction o Web Resource o System Resource o Network Delay o Firewall o Web Server Resource o Web Application Server Resource o Database Server Resource o Streaming Media o ERP Server Resource o Java Performance
  • 59. Overview Service level agreements (SLAs) enable you to define goals for your load test scenario. During a scenario run, the Controller measures the performance and collects data. Analysis compares this data against thresholds defined in the SLAs. Service Level Agreement - SLA
  • 60. Types of SLA SLA status determined at time intervals over a timeline. Analysis displays SLA statuses at set time intervals—for example, every 10 seconds—over a timeline within the run. o SLAs for Average Transaction Response Time o SLAs for Errors Per Second. SLA status determined over the whole run. Analysis displays a single SLA status for the whole scenario run. o Total Hits per run o Average Hits (hits/second) per run o Total Throughput (bytes) per run o Average Throughput (bytes/second) per run Service Level Agreement - SLA
  • 62. What'sInside Analysis: Analyzing Results Introduction to Analysis Analyzer Window at a Glance Available Graphs Graph Configuration Interpreting Graphs and Identifying Bottlenecks
  • 63. Analysis provides graphs and reports to help you analyze the performance of your system.  The aim of the analysis session is to find the failures in your system's performance and then pinpoint the source of these failures.  Were the test expectations met? What was the transaction response time on the user’s end under load? Did the SLA meet or deviate from its goals? What was the average transaction response time of the transactions?  What parts of the system could have contributed to the decline in performance? What was the response time of the network and servers?  Can you find a possible cause by correlating the transaction times and backend monitor matrix? Overview Analysis
  • 64. Analyzer Window at a Glance
  • 65. Session Explorer pane: In the upper left pane, Analysis shows the reports and graphs that are open for viewing. From here you can display new reports or graphs that do not appear when Analysis opens, or delete ones that you no longer want to view. Properties window pane: In the lower left pane, the Properties window displays the details of the graph or report you selected in the Session Explorer. Fields that appear in black are editable. Graph Viewing Area: In the upper right pane, Analysis displays the graphs. By default, the Summary Report is displayed in this area when you open a session. Graph Legend: In the lower right pane, you can view data from the selected graph. Analyzer Window at a Glance
  • 66. User-Defined Data Point Graphs : Provide information about the custom data points that were gathered by the online monitor. System Resource Graphs : Provide statistics relating to the system resources that were monitored during the scenario using the online monitor. Network Monitor Graphs : Provide information about the network delays. Firewall Server Monitor Graphs : Provide information about firewall server resource usage. Web Server Resource Graphs : Provide information about the resource usage for the Apache, iPlanet/Netscape, iPlanet(SNMP), and MS IIS Web servers. Available Graphs
  • 67. Available Graphs Transactions: o Average Transaction Response Time o Transactions per Second o TPS (Transactions Per Second) o Total Transactions per Second o Transaction Summary o Transaction Performance Summary o Transaction Response Time Under Load Web Resources: o Hits per Second o Hits Summary o Throughput o Throughput Summary o HTTP Responses per Second o Connections o Connections per Second o SSLs Per Second Vusers: o Running Vusers System Resources: o UNIX CPU Util o UNIX Avg Load o UNIX Paging rate Web Server Resources: o Apache CPU Usage o Apache Hits/sec o Apache Kbytes Sent/sec Web Page Breakdown o Web Page Breakdown o Page Component Breakdown o Download Component Size (KB)
  • 68. User-Defined Data Point Graphs : Provide information about the custom data points that were gathered by the online monitor. System Resource Graphs : Provide statistics relating to the system resources that were monitored during the scenario using the online monitor. Network Monitor Graphs : Provide information about the network delays. Firewall Server Monitor Graphs : Provide information about firewall server resource usage. Web Server Resource Graphs : Provide information about the resource usage for the Apache, iPlanet/Netscape, iPlanet(SNMP), and MS IIS Web servers. Graph Configuration
  • 69. Set Global Filter Set Filter By - Filter Condition, Group by Merge Graphs Auto-Correlate Graphs Cross Results Report generation Using Templates HTML Report Customizing Templates Graph Configuration
  • 70. Graph analysis Introduction to Bottlenecks Types of bottlenecks Memory Bottlenecks CPU Bottlenecks Brief on Disk and Network Bottleneck Database Bottlenecks Interpreting Graphs and Identifying Bottlenecks
  • 72. What'sInside Best Practices Best Practices for Performance Testing - Do Best Practices for Performance Testing - Don’t
  • 73. Clear the application and database logs after each performance test. Excessively large log files may artificially skew the performance results. Identify the correct server software and hardware to mirror your production environment. Use a single graphical user interface (GUI) client to capture end-user response time while a load is generated on the system. Include a buffer time between the incremental increases of users during a load test. Use different data parameters for each simulated user to create a more realistic load simulation. Monitor all computers involved in the test, including the client that generates the load. This is important because you should not overly stress the client. Prioritize your scenarios according to critical functionality and high- volume transactions. Use a zero think time if you need to fire concurrent requests,. This can help you identify bottleneck issues. Stress test critical components of the system to assess their independent thresholds. Best Practices for Performance Testing - Do
  • 74. Do not allow the test system resources to cross resource threshold limits by a significant margin during load testing, because this distorts the data in your results. Do not run tests in live production environments that have other network traffic. Use an isolated test environment that is representative of the actual production environment. Do not try to break the system during a load test. The intent of the load test is not to break the system. The intent is to observe performance under expected usage conditions. You can stress test to determine the most likely modes of failure so they can be addressed or mitigated. Do not place too much stress on the client test computers. Best Practices for Performance Testing - Don’t