performance mobile agile the future - australia and new zealand testing … · 2016-05-31 · ©...

42
© Planit Software Testing Performance – Mobile – Agile The Future Presenter: Jaron Marsh

Upload: others

Post on 14-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Performance – Mobile – Agile The Future

Presenter: Jaron Marsh

Page 2: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Our knowledge is your power

Software Testing

Consulting, Advisory, Delivery,

Managed Services, Training

Page 3: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Introduction

Page 4: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Agenda

1. Traditional Performance Testing

2. Agile Performance Testing

3. Mobile Performance Testing

4. The Future

Page 5: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Firstly – what is Performance Testing?

Simulating user behaviour of application

Testing against Non Functional

Requirements (NFRs )

Analysing all results (test and monitoring results)

to produce a view of performance behaviour

Page 6: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Traditional Performance

• Occurs at end of project (can easily delay go-live)

• Production-like load and production-like environment

• Modelled off production stats

• Requires all functionality

Page 7: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Traditional Performance

Steps involved:

1. Test planning (workload model, requirements etc.)

2. Test preparation (scripting, smoke testing etc.)

3. Test execution (peak load, soak etc.) – multiple iterations

4. Test reporting

Page 8: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Traditional Performance

Golden rule:

‘As production-like as possible’

Page 9: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Agile Performance Testing

Page 10: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Agile Performance

• Occurs at end of each sprint/release

• Baseline/benchmark approach

• Not reliant on production load

• Doesn’t require all functionality

• Traditional performance approach at the end

Page 11: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Page 12: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Approach

• What are the tests?

• How are they run?

• Who runs them?

• What gets reported?

Page 13: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Benefits

Earlier identification of performance issues

Final performance window smaller

Shift left

Continuous integration

Page 14: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Risks

− Potential higher cost (performance resources engaged

earlier)

− Developer assistance required earlier

− Convincing project of benefits

Page 15: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Example

Login Service

RELEASE 1

Page 16: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Example

Login ServicePerformance

Test

RELEASE 1

Page 17: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Example

Login ServicePerformance

Test

Customer Service

RELEASE 2

Page 18: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Example

Login ServicePerformance

Test

Customer Service

Performance Test

RELEASE 2

Page 19: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Example

Login ServicePerformance

Test

Customer Service

Performance Test

Transaction Service

RELEASE 3

Page 20: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Example

Login ServicePerformance

Test

Customer Service

Performance Test

Transaction Service

Performance Test

RELEASE 3

Page 21: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Results

Releases 1 & 2

Release 3

Page 22: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Approach

Page 23: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Mobile Performance Testing

Page 24: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Different mobile applications

1. Native application (e.g. Facebook, Angry Birds)

2. Mobile Web application (e.g. Financial Times)

3. Hybrid application (e.g. Instagram

mobile app)

Page 25: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

How do they work?

Largely the same as a desktop application!

1. User interacts with the application

2. Application may or may not send a request to the

backend

3. Backend returns a response to the user, back to step 1.

Page 26: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Why so critical?

1. Faster delivery to production

2. Continued customer satisfaction

3. Desire to be best option in the market

Page 27: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

What do we need to consider?

Page 28: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Script Creation

Options:

1. Manually build each request

2. Record traffic and re-build requests

3. Record with performance tool through a proxy to create

the requests

Page 29: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Load Generation

What do you want to replicate?

Where can you generate the load from?

Page 30: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Is there anything unique about apps?

• Data/CSS etc. often loaded during app start up

• Not as easy to ‘record and replay’

• User-Agent HTTP header is critical to simulate the

correct device/browser

Page 31: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Different Approaches

Page 32: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

What approaches are there?

Three main approaches:

1. UI performance

2. Infrastructure performance

3. Combination of the first two approaches

Page 33: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Infrastructure

Page 34: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

UI Performance

Page 35: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Infrastructure Performance

Page 36: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Blended Approach

Outcome

1. We have tested the infrastructure (main performance risk)

under load

2. We have identified performance of the application on a mobile

device while the infrastructure is under load

Page 37: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

The Future

Page 38: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

The Future

• Move to have everything ‘mobile’

• Agile approach with a traditional ending for mobile

applications

• More mobile apps built agile

• Quicker turn-around

Page 39: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

The Future

• More in-house uptake

• Higher demand to be first to market

• More involvement earlier

• More integration

Page 40: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

The Future of Performance

CHANGE

Page 41: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Summary

The future is faster, more agile (in more ways than one) and

constantly changing!

Page 42: Performance Mobile Agile The Future - Australia and New Zealand Testing … · 2016-05-31 · © Planit Software Testing Agenda 1. Traditional Performance Testing 2. Agile Performance

© Planit Software Testing

Jaron Marsh

Senior Technical Test Consultant

[email protected]

+64 4 815 8140

Performance – Mobile – Agile – The Future

Contact Planit

www.planittesting.com