Load test nfr gathering

11
Bespoke Software Specialists Simulated load NFRs Load test NFR gathering - tester's point of view

Transcript of Load test nfr gathering

Bespoke Software Specialists

Simulated load NFRs

Load test NFR gathering - tester's point

of view

Agenda – Approaches to gathering load requirements

1. Most common approach

JMeter script example

2. Throughput approach

JMeter script example

3. Carbon copy approach

JMeter script example

4. Passive approach (anti-approach?)

Most common approach (BAs/Testers)

Available load requirements:

Total number of users in the system

Number of users using the system concurrently

Additional stuff:

Business scenarios (user journeys)

User think times

Pros & cons

+ Fairly easy to do

+ Intuitive

+ Good starting point early in a project when

requirements can be pretty vague

+ Fits perfectly for simple applications

- Production-like structure of the business

scenarios can be pretty hard to define

- Hard to simulate load correctly for complex

applications

Most common approach - script example (JMeter)

Throughput approach

Identify business transactions within the system

For each transaction find information on peak execution frequence in a

period of time (minute, hour, day)

Pros & cons

+ Able to simulate realistic number of

transactions during load test

+ No need to dwell on the complicated

business scenarios and think times (especially

for more complex applications)

- Not easy to implement in load generating

applications (e.g. JMeter, VS)

- Can be hard to grasp for standard approach

enthusiasts

Throughput approach - example requirements

Throughput approach – script example (JMeter)

Carbon copy approach

Production load is replayed request by request during the test

Requests are recorded and saved in application logs

Logs are processed to fetch the needed requests

Load test script does not contain any business logic, just loops over the fetched requests

Pros & cons

+ Perfect fit for some contexts

+ Easy to implement performance test scripts

- Needs access to production DB, logs

- Logs needs processing to be able to be used

by load generation application

- Can be quite difficult in complex systems

Carbon copy approach – script example [JMeter]

Passive (anti?) approach

No need to talk to the business side about the requirements. They don’t know them and you

will be waiting forever for the figures

Set the load level so the system is moderatly busy and run the test

Analyze the results, in the test report mention the load level that was used – if the numbers get

attention of the business side – good. They will provide the correct ones.

If the numbers won’t trigger any comment – good. That means we have the good ones

already

Thank you