Title: Automating your Website Testing
1Automating your Website Testing
- By
- Andrew L. Pollner and Lei Wang
- ALP International Corporation
2Why Load Test?
- To Simulate Multiple Users on a System
- To Measure end-to-end performance
- To Measure Server Performance
- Database (Oracle)
- Application (CF)
- Middleware (Web Logic)
- Web (Netscape)
3When Should Loadtesting Occur?
- When sizing a server
- After Application Has Stabilized
- When other users are not on the system
- After notifying Sys Admin.s, DBAs, Test Managers
4Whats Needed for Loadtesting?
- Knowledge of
- Application
- Database
- Environment
- LoadRunner!
5Loadtesting Concepts - Part I
-
- Measured event (i.e. Time it takes to return
data to a screen after a QUERY button is pressed) - Synchronized point where transaction is to occur
simultaneously
6Loadtesting Concepts - Part II
- A defined user type which
- executes a specific test
- A group of Vusers which with a
- characteristic profile
-
- A combination of sgroups
7Types of Vusers
- Web
- C/S GUI
- Terminal Emulation
- SQL
8Using LoadRunner - Web
- Record HTTP Script
- Generalize trace
- Add Transaction points
- start_transaction(ClaimWriteback)
- end_transaction(ClaimWriteback, PASS)
- Add Rendezvous
- rendezvous(Login) rendezvous(ClaimWriteback)
9Start Synchronization
Rendevouz 1 gt
Rendevouz 2 gt
Rendevouz 3 gt
10Step Synchronization
Rendevouz 1 gt
Rendevouz 2 gt
Rendevouz 3 gt
11Using LoadRunner - DB
- Get SQL trace
- Generalize SQL trace
- Add Transaction points
- start_transaction(ClaimWriteback)
- end_transaction(ClaimWriteback, PASS)
- Add Rendezvous
- rendezvous(Login) rendezvous(ClaimWriteback)
12Product Categories
- GUI/Web vusers
- Netscape Browser
- IE Browser
- Client Server
- RTE vusers
- Terminal Emulation
- SQL (dB) vusers
- Client Server
13LoadRunner Family of Products
- Both Client AND Server Load Testing
- Wide range of platforms
- Win 2000
- NT
- Win95/98
- UNIX
- Reporting
- Automatically for each user
- By transaction
14Client AND Server Load TestingTesting the Site
SYBASE SERVER
SQL SERVER
NT
- Single point of control Controller
15Client AND Server Load TestingTesting the Site
SYBASE SERVER
SQL SERVER
NT
- Single point of control Controller
- Drive multiple real NT GUI clients End-to-End
16Client AND Server Load TestingTesting the Site
SYBASE SERVER
NT
SQL SERVER
NT
- Single point of control Controller
- Drive multiple real NT GUI clients End-to-End
- Stress SQL Server with multiple virtual NT clients
17Client AND Server Load TestingTesting the
Enterprise
SYBASE SERVER
NT
NT/UNIX
- Single point of control
- Drive multiple real clients
- Stress SQL Server virtual clients NT
- Stress Sybase virtual clients NT/UNIX
18Advanced Loadtest Measurement
- Mean vs. Median
- 90 Percentile
- Performance under load
- System Performance Measurement
- CPU
- SWAP
- DISK
19Analyzing Loadtest Results - I
CLIENT
LAN
WAN
SERVER
SERVER
Sybase
SQL Server
Total System Performance Client, LAN, SQL
Server, WAN, Sybase
Client Load
20Analyzing Loadtest Results - II
CLIENT
LAN
WAN
SERVER
SERVER
Sybase
SQL Server
Client Load
Transaction Performance LAN, SQL Server, WAN
Sybase
Server Load
21Analyzing Loadtest Results - III
CLIENT
LAN
WAN
SERVER
SERVER
Sybase
SQL Server
Client Load
Transaction Performance WAN, Sybase
Server Load
22Analyzing Loadtest Results - IV
CLIENT
LAN
WAN
SERVER
SERVER
Sybase
SQL Server
Client Load
Transaction Performance SYBASE
Server Load
23Analyzing Loadtest Results - V
CLIENT
LAN
WAN
SERVER
SERVER
Sybase
SQL Server
Client Load
Transaction Response Time Client
Transaction Response Time LAN, SQL Server
Server Load
24Conclusions
- Loadtesting
- Is a necessary component in testing an
application and its environment - Has multiple purposes
- Comes in many flavors
- Is an extension to Functional testing
- Is complex!
25DEMO!
26Virtual User Generator
27LoadRunner Controller
28Controller Vusers
29Vuser Protocol
30Transaction Report
31Page Faults Graph
32On-line Monitors
33QA