1 / 33

Concepts on Software Performance Testing

Concepts on Software Performance Testing. Presented by Chris SAUNDERS - 2014 @chrisrsaunders. Presentation. Presentation. Presentation's Purpose [1%] What’s Software Performance ? [ 4 %] General Measures [4%] The Business Case [1%] Performance Goals - 5 Examples Types [45%]

zoey
Download Presentation

Concepts on Software Performance Testing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Concepts on Software Performance Testing Presented by Chris SAUNDERS - 2014 @chrisrsaunders

  2. Presentation

  3. Presentation Presentation's Purpose [1%] What’s Software Performance? [4%] General Measures [4%] The Business Case [1%] Performance Goals - 5 Examples Types [45%] Some Performance Testing Approaches [41%] Last Slide [4%]

  4. Presentation's Purpose

  5. Presentation's Purpose • To talk about software performance testing • To explore concepts, ideas and things to consider • Not talking about tools

  6. What is Software Performance?

  7. What is Software Performance? Software performance is the manner in which software functions, operates, or behaves; based on a given set of factors. Software performance testing is to determine how a system performs in terms of responsiveness and stability with a defined set of factors. What factors? Each person takes two sticky notes and writes their answer down, and places it on the wall Note this question may be asked again later

  8. General Measures

  9. General Measures For example: The CPU & Memory resources will not exceed 80% for more than 5 second duration.

  10. General Measures For example: The new calculation engine will have a 20% increase in processing time and data volume throughput.

  11. General Measures For example: Determine the system performance on the system due to teamed network card failure.

  12. The Business Case

  13. The Business Case “What is the business case for performance testing?” “How does it add business value?” Need to define “realistic performance related goals”

  14. Performance Goals5 Examples Types

  15. Performance Goals:Water pipe analogy Consider software performance testing like Christchurch’s water pipe system

  16. Performance Goals:Response Time Measuring the duration of time between two points 0:00:00.29 or 290ms Duration A B For example: The durationfor a user waiting on a file to upload

  17. Performance Goals:Concurrency Measuring the effect on the system with concurrent processes For example: The effect of the different number of users trying to upload files at almost the same time

  18. Performance Goals:Throughput Measuring the effect on the system with throughput of information (volume) 98 l/s 20 l/s For example: The effect of different sized filesbeing uploaded

  19. Performance Goals:Interdependence Measuring how the system responds to different factors B A Duration For example: Consider the relationship between the following1. Response time 2. Concurrency 3. Throughput

  20. Performance Goals:Interdependence Compare these two scenarios: • 100 users are each uploading 20MB files, start uploading files within a 5 minutes duration. • 10 users are each uploading 200MB files, start uploading files within a 10 seconds duration. Which scenario has better performance?

  21. Performance Goals:MTBF & MTTR Mean Time Between Failures &Mean Time To Repair Determine the performance of when the system fails and how long does it take to repair? Consider the relationship of the system to other systems or internal components

  22. Performance Goals:MTBF & MTTR The Chaos Monkey is a software tool that was developed by Netflix engineers to test the resiliency and recoverability of their Amazon Web Services Open Source https://github.com/Netflix/SimianArmy Netflix engineers develop automatic recovery mechanisms Source : http://www.greenm3.com/gdcblog/2012/7/31/netflix-sets-chaos-monkey-free-for-all-to-use-next-comes-mor.html

  23. Performance Goals:Summary • Response Time • Concurrency • Throughput • Interdependence • MTBF & MTTR • …

  24. Some Performance Testing Approaches

  25. Performance Testing Approach:Load Testing Measure how the system behaves under a specific expected load. Load characteristics: Define number of concurrent users, with a determined throughput for a given duration Could be looking for bottlenecks

  26. Performance Testing Approach:Stress Testing Measure how the system behaves with loads beyond normal operational capacity Measure modes of failure Determine the robustness of the system: How, when & where is it going to fail

  27. Performance Testing Approach:Spike Testing Measure how the system behaves with the sudden increase in load Determine system response; performance profile or system failure

  28. Performance Testing Approach:Endurance (Soak) Testing Measure how the system operates under a continuous expected load Determine performance degradation

  29. Environmental changes to determine system performance System controlled failure System configuration changes

  30. Performance Testing Approach:Summary • Load Testing • Stress Testing • Spike Testing • Endurance Testing • Environmental changes to determine system performance • …

  31. What’s Software Performance?

  32. What is Software Performance Testing? Software performance testing is to determine how a system performs in terms of responsiveness and stability with a defined set of factors. What factors? (Each person can change their two sticky notes on the wall) Discuss software performance testing…

  33. Concepts on Software Performance Testing Presented by Chris SAUNDERS - 2014 @chrisrsaunders

More Related