Continuous Performance Testing

10
Continuous Performance Testing Avoid Nasty Surprises !!!

description

This talk was presented at VodQA Gurgaon 5th edition (22nd March 2014)

Transcript of Continuous Performance Testing

Page 1: Continuous Performance Testing

Continuous Performance Testing

Avoid Nasty Surprises !!!

Page 2: Continuous Performance Testing

Major Performance issues raised

Tuning an entire month's worth of code..It can be a tedious task..

Performance??No mention in initial plans!!

Project Manager

Short Delivery Deadlines,Cost is a big issue“ Lets fit it later ”

QA

Short Delivery Deadlines,Cost is a big issue“ Lets fit it later ”

Dev

Story #1:Fit it later

QA

PhotoCredits:Continuous Performance Testing by Mairbek Khadikov

Page 3: Continuous Performance Testing

New Version goes live soonLets check performance

Performance degraded

QA

Lets profile our application

QA

Performance increase by 10%But its still poor

CPU utilization is 50%

Application needs to go Live !!!!

Alert Raised too late

Delivery Manager

Delivery Manager

Story #2:Alert is raised too late ...

PhotoCredits:Continuous Performance Testing by Mairbek Khadikov

Page 4: Continuous Performance Testing

Performance degraded inlast release candidate

Which branch exactly Impacted performance

Lets profile our application

QA Dev

Dev

Story #3:Which branch is culprit?

PhotoCredits:Continuous Performance Testing by Mairbek Khadikov

Page 5: Continuous Performance Testing

Leaving load testing until late in the development lifecycle

Inconvenience to developers in fixing performance issues

Decreased productivity

Destroyed Customer relations

Lessons Learnt

Increased development and hardware costs

Page 6: Continuous Performance Testing

Continuous

Sustainable

Maintainable

Traceable

Efficient

Introducing Continuous performance

Page 7: Continuous Performance Testing

Step One: Include performance in the requirements definition.

Step Two: Work performance testing into the development timeline.

Step Three:Conduct performance tests on a regular basis.

Step Four:Constantly monitor performance activity.

Establishing a process

ProcessCredits:http://www.devx.com/Java/Article/16755/0/page/3 by Cliff Sharples

Page 8: Continuous Performance Testing

Step Five:Track the performance history as the application grows.

Step Six:Use that data to get a fix on the code responsible for bottlenecks.

Step Seven:Use your knowledge to efficiently tune only the code that caused the performance problem.

Establishing a process

ProcessCredits:http://www.devx.com/Java/Article/16755/0/page/3 by Cliff Sharples

Page 9: Continuous Performance Testing
Page 10: Continuous Performance Testing

THANKSFor questions or suggestions:

Kriti Mehta

@kriti_mehta

Vishnu Priya Krishnamurthy

@Priyakrish6