cmg impact2016 - pros and cons of doing performance testing along with development versus at the end...

47
Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it PhD. Federico Toledo @fltoledo Sofía Palamarchuk @sopalamarchuk

Upload: federico-toledo

Post on 20-Jan-2017

234 views

Category:

Software


0 download

TRANSCRIPT

Page 1: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it

PhD. Federico Toledo@fltoledoSofía Palamarchuk@sopalamarchuk

Page 2: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Agenda

Page 3: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Co-founder and CEO US at Abstracta (www.abstracta.us)

• PhD and author

• +10 years experience in performance testing

• +80 projects worldwide

Who we are

Page 4: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Page 5: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What is computer

performance?

Page 6: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

USEFUL WORK

TIME & RESOURCES

USED

VS

Page 7: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What is performanc

e testing about?

Page 8: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Simulation

Sour

ce: h

ttp://

www.

min

iatu

r-wun

derla

nd.d

e/

Page 9: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Measurement

Page 10: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Breaking pointBottlenecks

Page 11: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• At the end • Waterfall• Acceptance testing• Simulation of the expected load scenario

• Along with development• Agile• Continuous integration • Unit and component• Early feedback• Performance engineering

Performance Testing

Page 12: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Page 13: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Page 14: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What you always have to take into account

Page 15: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What are the main hard-skills a performance tester needs?

• Scripting and programming• Communication protocols• Architectures • Monitoring tools and metrics• Network and Operating Systems

administration• Business knowledge

People: hard-skills

Page 16: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What are the main soft-skills a performance tester needs?

• Abstraction• Communication • Analysis • Perception

People: soft-skills

Page 17: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

As Scott Barber says:

A good performance tester should be a “mid-level” in everything.

http://www.perftestplus.com/resources/pt_for_managers_ppt.pdf

People

Page 18: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What you always have to take into account

Page 19: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Technology

Page 20: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Load simulation• JMeter (jmeter.apache.org)• Taurus (gettaurus.org)• BlazeMeter (blazemeter.com)• Gatling (gatling.io)

• Measurement • Profilers and similar (JVisualVM, JProfiler,

dotTrace)• Operating system (NMON, perfmon, Netdata)• APMs (AppDynamics, NewRelic, DataDog)

Technology – Server Side

Page 21: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Technology

Page 22: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Web• Page Speed• Yslow• monkeytest.it• APMs

• Desktop• Perfmon or NMON • Profilers Java or .NET • APM

• Mobile• Google Test Cloud / Testdroid / Perfecto• Xcode - Instruments / XCTest• APMs• Monkop

Technology – Client Side

Page 23: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk
Page 24: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk
Page 25: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk
Page 26: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Ebay ESPN Fantasy Instagram Rio 2016 VivaVideo

Monkop - Explorations

Page 28: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk
Page 29: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

What you always have to take into account

Page 30: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Test design• Test automation• Test execution and

measurement

Processes

Page 31: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Execution plan• Baseline (used as a reference)• Then, iterative and incremental approach

Processes

Server

Server

Page 32: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile • Pros and cons based on real world experiences

• Conclusion

Page 33: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Page 34: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Most of our customers ask for a load simulation before they go-live. Main motivations:• New version with new features• New architecture (win to web, web to mobile)• Marketing campaigns• One company acquires another (more users)

• Only some asked to intervene since the beginning• That’s how we decided to compare both

approaches

What is the most used one?

Page 35: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

PROS1. It’s easier to plan 2.Focus in a specific context3.Environment similar to

production

CONS4. Infrastructure availability5. Costs of architectural changes

Performance Testing at the End

Page 36: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

PROS1. Minimize risk2. Early and constant feedback3. Learning

• Monitoring tools and Analysis • Good and bad practices

CONS4. More automation effort

• Pay attention to which level you should automate

5. Fallacy: if you test the components then the entire system will work properly.

Performance Testing along with development

Page 37: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Page 38: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Agenda

• Introduction• Performance, testing, different approaches

• What you always have to take into account• People, tools and methodology

• Comparison: Waterfall vs. Agile• Pros and cons based on real world experiences

• Conclusion

Page 39: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Which approach is better?

You should ask a different question

Conclusion

Page 40: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Do you need to verify that your system supports a specific load? • Do you need evidence for your

customers?

Go with a LOAD SIMULATION.WATERFALL APPROACH.

Which approach is better?

Page 41: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Do you want to optimize costs and reduce risks pertaining to the system’s performance? • Do you want to increase your team’s knowledge

in terms of monitoring and performance engineering? • Do you want to follow a real continuous

integration scheme?

Go with PERFORMANCE ENGINEERING along with development.

AGILE APPROACH.

Which approach is better?

Page 42: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

•We need both approaches in different stages of our development cycle.

•We should start early by doing performance engineering and we also need to simulate load for acceptance testing.  

Which approach is better?

Page 43: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

THANK YOU!Pros and Cons of Doing

Performance Testing Along with Development Versus at the End of

it

Page 44: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Performance testing fallacieshttps://www.stickyminds.com/article/7-performance-testing-fallacies-undermining-your-test-strategy

• What’s more important, the tool or the tester?http://www.abstracta.us/2015/05/24/whats-more-important-the-tool-or-the-tester/

• Introduction to Taurus, an alternative to JMeterhttp://www.abstracta.us/2015/09/07/introduction-to-taurus-an-alternative-to-jmeter/

• Gatlinghttp://blog.abstracta.com.uy/search/label/Gatling

References

Page 45: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

• Blog and resources (in English)• http://www.abstracta.us/knowledge-center/

• Blog (in Spanish) • http://blog.abstracta.com.uy

• eBook “A complete Introduction to Functional Test Automation” (in English)• http://www.abstracta.us/2016/05/31/ebook-complete-introdu

ction-to-functional-test-automation/

Free eBook and materials

Page 46: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

If you like it

Certification in Performance Testing with JMeter and BlazeMeter

• Online course (one month)• www.abstracta.us/training

Cupon code: 25% OFF this month

IMPACT2016 http://bit.do/librodetesting

Page 47: CMG imPACt2016 - Pros and Cons of Doing Performance Testing Along with Development Versus at the End of it - Federico Toledo, Sofía Palamarchuk

Silicon Valley office425 Broadway Street Redwood City, CA

HeadquartersJose Ellauri 1126 Montevideo, Uruguay

www.abstracta.us

PhD. Federico Toledo@fltoledo

Sofia Palamarchuk@sopalamarchuk