quick, easy, cheap & valuable performance testing for every member of the team

30
www.PerfTestPlus.com © 2006-10 PerfTestPlus, Inc. All rights reserved. Quick, Cheap, Easy & Valuable Performance Testing Page 1 Scott Barber Chief Technologist PerfTestPlus, Inc. Quick, Easy, Cheap & Valuable Performance Testing… Created for: STANZ 2010 The Duxton Hotel Wellington City, NZ 23 August, 2010 The Swissotel Sydney Sydney, AU 26 August, 2010 …for Every Member of the Team

Upload: scott-barber

Post on 05-Dec-2014

1.333 views

Category:

Technology


1 download

DESCRIPTION

Not all Performance Testing is hard. Some is crazy simple... like "takes under 30 seconds per week" simple... and those simple things can often resolve 75% or more of your performance concerns before the app is even ready for the first "hard" test.

TRANSCRIPT

Page 1: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 1

Scott BarberChief Technologist

PerfTestPlus, Inc.

Quick, Easy, Cheap & Valuable

Performance Testing…

Created for:

STANZ 2010

The Duxton HotelWellington City, NZ

23 August, 2010

The Swissotel SydneySydney, AU

26 August, 2010

…for Every Member of the Team

Page 2: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 2

Beautiful Testing

oreilly.com/catalog/9780596159825

Performance Testing Guidance for Web Applications

www.codeplex.com/PerfTestingGuidewww.amazon.com/gp/product/0735625700

CTO, PerfTestPlus, [email protected]

Co-Founder:Workshop On Performance and Reliability

www.performance-workshop.org

Co-Author:

Scott Barber

Page 3: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 3

Performance Testing: An empirical, technical investigation conducted to provide stakeholders with information about the quality of the product or service under test with regard to speed, scalability and/or stability characteristics with the purpose of assessing value or mitigating risk.

Performance Investigation: A deliberate data-collection and data-interpretation activity typically focused on data related to speed, scalability, and/or stability of the product under test. The collected data are primarily used to assess hypotheses about the root cause of one or more observed performance issues.

Performance Validation: A deliberate activity that compares speed, scalability and/or stability characteristics of the product under test to the expectations of representative users of the product.

What is Performance Testing (Part 1)

Page 4: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 4

What mom tells people:

I help people make websites go fast.

What is Performance Testing (Part 2)

What I tell people:

I help and/or teach individuals and organizations to optimize software systems by balancing:

• Cost

• Time to market

• Capacity

while remaining focused on the quality of service to system users.

Page 5: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 5

In effect:

Performance testing helps stakeholders

make decisions regarding

product value and project risk;

Specifically value and risk related to

speed, scalability, and stability

attributes of a system and it’s components

throughout the product life-cycle.

What is Performance Testing (Part 3)

Page 6: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 6

“Let‟s face the truth, performance testing

*IS* rocket science.”

--Dawn Haynes

… but even rocket science involves

*SOME* easy stuff.

--Addendum added by: Scott Barber

Page 7: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 7

Quick, Easy, Cheap & Valuable

Item #1

Make Performance a:

Page 8: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 8

• Focusing on performance adds value and mitigates

risk from “bar napkin to delete key”.

• Get performance in the dev, test, & delivery plans.

• Don’t let performance fall off the plate.

• Be the advocate, even if it makes you “annoying”.

Thoughts on Priority

Goals: Soft Boundaries (User Satisfaction)

Requirements: Firm Boundaries (Business or Legal)

Thresholds: Hard Boundaries (Laws of Physics)

Constraints: Arbitrary Boundaries (Budget or Timeline)

Page 9: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 9

Ask lots of:

Quick, Easy, Cheap & Valuable

Item #2

Page 10: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 10

• How is the performance today?

• How will this [change] effect performance?

• Go to dev, test, & management meetings – and ask

those questions.

• Advocate performance through questions.

• Earning the “annoying” label for asking

questions is ok, but becoming “annoying”

via your response to their answers isn’t.

Thoughts on Questions

Page 11: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 11

“Ok, that stuff is „quick‟, „easy‟ & „cheap‟

and I can see the value,

but what about the *testing*?!

Page 12: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 12

Am I annoyed?

Quick, Easy, Cheap & Valuable

Item #3

Page 13: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 13

• Why am I annoyed?

• How annoyed am I?

• Does this annoy me all the time, or just sometimes?

• What impact is this likely to have on product value?

• Advocate something better.

Thoughts on Annoyance

Page 14: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 14

Who else is annoyed?

Quick, Easy, Cheap & Valuable

Item #4

Page 15: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 15

• Who matters?

• How do I get their feedback?

• Are they annoyed with

performance, or workflow,

or, or, or…?

• Advocate something better.

More Thoughts on Annoyance

Page 16: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 16

Determine:

Quick, Easy, Cheap & Valuable

Item #5

Page 17: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 17

• http://www.websiteoptimization.com/services/analyze/

• http://www.websitepulse.com/help/tools.php

• http://webwait.com/

If you don’t have speed targets, don’t fret...

Trends are trendy!

Speedy Speed Collection

Page 18: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 18

• Microsoft Visual Round Trip Analyzer

• IBM Page Detailer Basic

Speedy Speed Collection (and more)

Page 19: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 19

Research the

Quick, Easy, Cheap & Valuable

Item #6

Page 20: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 20

• Keynote Systems

• Gomez Benchmarks

• WebMetrics

• The eService Index

How are “leaders” doing?

Page 21: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 21

Test the Front-End with

Quick, Easy, Cheap & Valuable

Item #7

Page 22: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 22

Media, HTML, styles & scripts – compress & minify.

The end-user’s browser cache can be your best friend, or your worst nightmare, use it wisely.

Get the load order of your scripts and styles wrong, and you’ll lose your users every time – even though response time hasn’t changed!

3, 4, & 5xx series response codes on individual objects are bad things.

When it comes to performance, less is more (usually).

What is SCORN, anyway?

Page 23: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 23

• High Performance Web Sites: Essential Knowledge for Front-End

Engineers, by Steve Souders, O’Reilly, 2007.

• Yahoo! YSlow for Firebug

• Page Speed

• Right Click -> View Source

and other Tips for Performance

Testing the Front End,

by Scott Barber,

for AST Update, 2007.

SCORN References

High Performance Web Sites: Essential Knowledge for Front-End Engineers

www.amazon.com/dp/0596529309

Page 24: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 24

Proceed with caution,

the following is only easy for hard-core

Quick, Easy, Cheap & Valuable

Item #8

Page 25: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 25

• Firefox Performance Tester’s Pack

• Web Site Test Tools and Site Management Tools

• Fiddler

• Web Development Helper

Easy Stuff for Geeks

Page 26: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 26

• Make performance a priority.

• Ask lots of questions.

• Am I annoyed?

• Who else is annoyed?

• Determine how fast.

• Research the competition.

• Test the front-end with SCORN.

• Embrace your inner geek.

ReCap

Page 27: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 27

Questions

Page 28: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 28

Performance Testing Principles

Project context is central to successful performance testing.

Business, project, system, & user success criteria.

Identify system usage, and key metrics; plan and design tests.

Install and prepare environment, tools, & resource monitors.

Script the performance tests as designed.

Run and monitor tests. Validate tests, test data, and results.

Analyze the data individually and as a cross-functional team.

Consolidate and share results, customized by audience.

"Lather, rinse, repeat" as necessary.

Page 29: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 29

Credits

Some of the material in this presentation was inspired by High Performance Web Sites: Essential Knowledge for Front-End Engineers, by Steve Souders, O’Reilly, 2007.

Some of this material was developed for, or inspired by, Performance Testing Guidance for Web Applications, a Microsoft patterns & practices book byJ.D. Meier, Scott Barber, Carlos Farre, Prashant Bansode, and Dennis Rea.

Many ideas in this presentation were inspired or enhanced by colleagues including Alberto Savoia, Roland Stens, Richard Leeke, Mike Kelly, Nate White, Rob Sabourin, Chris Loosley, Ross Collard, Jon Bach, James Bach, Jerry Weinberg, Cem Kaner, Dawn Haynes, Karen Johnson, and the entire WOPR community.

Most of the concepts in this presentation are derived from publications, presentations, and research written and/or conducted by Scott Barber.

Many ideas were improved by students of various courses taught by Scott Barber, back to 2001.

Page 30: Quick, Easy, Cheap & Valuable Performance Testing for Every Member of the Team

www.PerfTestPlus.com

© 2006-10 PerfTestPlus, Inc. All rights reserved.

Quick, Cheap, Easy & Valuable Performance Testing Page 30

Contact Info

Scott Barber

Chief Technologist

PerfTestPlus, Inc

E-mail:

[email protected]

Web Site:

www.PerfTestPlus.com