Why Do We Need Scenario Design?
- Simulates real user behavior and load patterns
- Helps identify performance bottlenecks
- Validates system capacity & SLA compliance
- Supports capacity planning & risk mitigation
- Ensures test is repeatable and measurable
What is the Purpose?
- Generate expected load (users/transactions)
- Validate response time, throughput & errors
- Ensure system stability under load
- Identify breaking point (if beyond expected)
- Provide data for tuning & optimization
How Do We Design?
- 1 Define Objectives & Success Criteria
- 2 Identify Transactions & Workload Mix
- 3 Estimate User Load & Behavior
- 4 Define Load Pattern (Ramp-up, Steady, Ramp-down)
- 5 Set Pacing / Think Time (if required)
- 6 Define Duration & Test Data Needs
- 7 Review, Baseline & Execute
Key Inputs
- Number of Concurrent Users: 100
- Target TPS: 50
- Avg Response Time (AHT target): ≤ 2 sec
- Test Duration: 1 Hour
- Ramp-up Time: 15 min
- Pacing/Think Time: As per calculation
Load Test Scenario (Example)
Test Type
Load Test
Total Duration
1 Hour
Peak Users
100
Target TPS
50 req/s
Ramp-up
15 min
Steady State
30 min
Ramp-down
15 min
Scenario Details
| Parameter | Value |
|---|---|
| Test Type | Load Test |
| Total Duration | 1 Hour (60 min) |
| Ramp-up Time | 15 Minutes |
| Steady State Time | 30 Minutes |
| Ramp-down Time | 15 Minutes |
| Peak Concurrent Users | 100 |
| Target TPS | 50 req/s |
| Expected Avg Response Time (AHT) | ≤ 2 sec |
| Pacing / Think Time | As per calculation |
| Environment | QA / Staging |
| Success Criteria | All SLAs met, Errors < 1% |
Load Test Metrics to Monitor
Response Time (Avg, 90th, 95th, 99th)
Throughput (TPS)
Error Rate (%)
Resource Utilization (CPU, Memory, Disk, Network)
Active Users
Transactions / Hits
Business KPIs (if applicable)
Tool Implementation – How to Add Scenario
LR LoadRunner
- Open Controller
- Go to Scenario > Schedule by Scenario
- Select "Load Scenario"
- Click Add
- Define Run Duration and Load Behavior
- Choose the schedule type: By Step (Ramp-up / Steady / Ramp-down)
- Add steps:
- Step 1: Ramp-up (15 min to 100 users)
- Step 2: Steady (30 min at 100 users)
- Step 3: Ramp-down (15 min to 0 users)
- Click OK and Save
Schedule Definition (By Step)
| Step | Action | Start Time | Duration | Users |
|---|---|---|---|---|
| 1 | Ramp-up | 00:00:00 | 00:15:00 | 0 - 100 |
| 2 | Steady State | 00:15:00 | 00:30:00 | 100 |
| 3 | Ramp-down | 00:45:00 | 00:15:00 | 100 - 0 |
JM Apache JMeter
- Add Thread Group
- Set Number of Threads (Users): 100
- Set Ramp-up Period (in seconds): 900 (15 min)
- Set Loop Count: Duration or Forever
To hold load for 30 min steady state:
- Add a Constant Throughput Timer or
- Use Ultimate Thread Group (for advanced)
- Set Ramp-down: Use Stepping Thread Group
- Add steps:
- Ramp-up to 100 users in 15 min
- Hold for 30 min
- Ramp-down to 0 in 15 min
Thread Group Properties
Number of Threads (users): 100
Ramp-Up Period (in seconds): 900
Scheduler
Duration (seconds): 3600
NL NeoLoad
- Open NeoLoad
- Go to Scenario
- Click Add > User Load
- Define Duration: 1 Hour
- Open the Load Profile Editor
- Add steps:
- Ramp-up to 100 users in 15 min
- Steady for 30 min
- Ramp-down to 0 in 15 min
- Save and Apply
Load Profile Editor
| Step | Start Time | Duration | Users |
|---|---|---|---|
| 1 | 00:00:00 | 00:15:00 | 0 - 100 |
| 2 | 00:15:00 | 00:30:00 | 100 |
| 3 | 00:45:00 | 00:15:00 | 100 - 0 |
Note
Adjust pacing/think time based on business workload and performance goals. Always validate with a baseline run before executing full load.
Success Criteria Example
- Avg Response Time ≤ 2 sec
- Error Rate < 1%
- System stable (No crashes / No resource saturation)
- All business transactions successful