SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
ReThink
Road to effective
Performance test
Dharshana Warusavitharana
Why Performance Test
Can traditional testing can capture everything ?????
1. Down time is expensive
2. Functional testing does not reveal
concurrent issues
3. Simulation of real time experience
4. Test software meets expectations under
expected workloads
a. speed,
b. scalability and
c. stability
What is a good
performing system
1. Availability
2. Response time
3. Throughput
4. Utilization
Relative ( Response time)
1. Greater than 15 seconds
2. Greater than 4 seconds
3. 2 to 4 seconds
4. Less than 2 seconds
5. Sub Second response time
6. Deci-second response time
How to Structure a Perf Test
The performance-testing approach consists of the
following activities:
Activity 1. Identify the Test Environment.
Activity 2. Identify Performance Acceptance Criteria.
Activity 3. Plan and Design Tests.
Activity 4. Configure the Test Environment.
Activity 5. Implement the Test Design.
Activity 6. Execute the Test.
Activity 7. Analyze Results, Report, and Retest.
How customers will
reach us
1. Need to know limits of the system
2. Need to understand the bottlenecks of some
specific scenarios.
3. Want to check system usability
4. Already faced an issues and need our help in
isolating the issue
5. Want to see whether the system meets the
defined KPIs
6. Want to test the product that is ready to ship
for end users
What are solutions in our
bucket and When
● Load testing
● Stress testing
● Endurance testing
● Spike testing
● Volume testing
● Scalability testing
Performance testing.
1. This type of testing determines or validates the speed, scalability,
and/or stability characteristics of the system or application under
test.
2. Performance is concerned with achieving response times,
throughput, and resource-utilization levels that meet the
performance objectives for the project or product.
Load testing.
Focused on determining or validating performance characteristics
of the system or application under test when subjected to
workloads and load volumes anticipated during production
operations.
Endurance / long running tests
○ Run for a long time
○ Determine whether no issues in long run
Stress testing.
○ This subcategory of performance testing is focused on determining or validating
performance characteristics of the system or application under test when subjected to
conditions beyond those anticipated during production operations.
○ Stress tests may also include tests focused on determining or validating performance
characteristics of the system or application under test when subjected to other stressful
conditions, such as limited memory, insufficient disk space, or server failure.
○ These tests are designed to determine under what conditions an application will fail, how it
will fail,
What should you ask
from customer
1. What makes you think there is a performance problem?
2. Can the problem be expressed in terms of latency/TPS?
3. What is the environment (AWS, Openstack)?
4. What are the user patterns and how users use the system?
5. What are the peak and off peak load expected?
6. What are the products and the versions used ?
7. What are the server and network monitoring key
Performance Indicators (KPIs)
8. Configuration/Deployment (if we do not have this information)?
Capacity Planning
1. How many end users will actually use the application?
2. How many of these users will use it concurrently?
3. How will the end users connect to the application?
4. How many additional end users will require access to the
application over time?
5. What will the final application landscape look like in
terms of the number and location of the servers?
6. What effect will the application have on network
capacity?
Selecting your tools
Test execution
Monitoring
Debugging
1. Tools are not universal,
2. Need to be creative with the environment.
3. Need to know what to monitor to select right tools .
4. Depends on the customer deployment.
5. Should adjust to the level of access to the system.
Designing an Appropriate Performance
Test Environment
1. Scaling of the test tool , clustering with
load
2. Data collection and deployment of
data bases.
3. Configure proxy services, Load
balancers to avoid throttling the traffic
4. Scale Up EC2 instances or other PaaS
infrastructure to support the load.
5. Deploy monitoring tools
Checklist before test
execution
1. Choosing an appropriate performance testing tool
2. Designing an appropriate performance test environment
3. Setting realistic and appropriate performance targets
4. Making sure your application is stable
5. Obtaining a code freeze
6. Identifying and scripting the business-critical transactions
7. Providing sufficient test data of high quality
8. Ensuring accurate performance test design
9. Identifying the server and network monitoring key
10. Performance Indicators (KPIs)
11. Allocating enough time to performance test effectively
Monitoring and what
we collect
1. Processor Usage, Load Average
2. Memory usage
3. Disk time ,Disk queue length
4. Network Bandwidth, Network output queue length
5. Memory pages/second ,Page faults/second
6. Response time ,Throughput
7. Amount of connection pooling
8. Hit ratios ,Hits per second
9. Database locks
10. Thread counts
11. Garbage collection
Tools used in monitoring
1. Testing tool it self
a. Throughput
b. Response time
2. Linux System stats ( SAR recording)
a. Load Average
b. CPU load
c. Memory
3. Linux top command
a. Memory allocation for the time
4. Dynatrace/Nagios/Amazon cloud watch
5. Splunk/ Logstash
a. Monitor the distributed error logs
Debugging , What we
need
Collect resources for
debugging
Some resources can be collected in test
execution time
1. Heap dumps
2. Thread dumps
3. Garbage collector logs
For some need to execute separately
1. JFR recording
2. Jprofiler
3. And other all profiling
4. JDBC spy
High CPU
1. JFR
2. Thread IDs and CPU usage of JAVA threads
3. Multiple thread dumps
High CPU consumption of a single or
multiple application threads
High CPU and High GC
1. JFR
2. Thread IDs and CPU usage
of JAVA threads
3. Multiple thread dumps
4. GC logs
5. Heap dumps (if necessary)
○ High CPU consumption of a single or multiple
application threads
○ High CPU consumption of GC threads
○ Both of the above
Application Slows Down, Application Hangs,
Request latency increases
1. JFR
2. Thread IDs and CPU usage of JAVA threads
3. Multiple thread dumps
4. Heap dumps (if necessary)
5. GC logs
○ Thread blocks in application threads when unable to obtain a lock
○ Threads continuously wait due to I/O
○ High GC activity during the peak load
○ High CPU consumption of a single or multiple threads during the peak load
○ High CPU consumption of a periodical event
○ Deadlocks
High Memory Usage, OOM, Memory Leak
1. JFR
2. GC logs
3. Heap dumps (if necessary)
○ Not enough memory allocated to JVM
○ High memory usage (with no leak)
○ Too many allocations due to auto-boxing
○ Memory leak
Data collection and
Reporting
Data collection
Reporing
1. Should indicate all your analysis on the current
system.
2. Clearly state your assumptions.
3. Tools used and test deployment.
4. Tuning and resource allocations.
5. Test break down and and concurrency details
6. Observations and evidence for observation.
7. Your conclusion.
8. Suggestions with reference and summary.
Engineer skill set
Let's Discuss
1. Communication, Communication and
Communication
2. For me more i do more i learn
3. Every time I learn a lot
4. Good understanding on basics
5. Flexibility, Some coding skills will be Handy
6. Good on Operating systems
7. Adjustability and communication
8. Skills on performance tooling
Thank you
Time
for
Questions

Contenu connexe

Tendances

Risk assessment at workplace
Risk assessment at workplaceRisk assessment at workplace
Risk assessment at workplacesajid ali
 
Powerpoint Risk Assessment
Powerpoint Risk AssessmentPowerpoint Risk Assessment
Powerpoint Risk AssessmentSteve Bishop
 
Health and Safety Made Easy Powerpoint Presentation
Health and Safety Made Easy Powerpoint PresentationHealth and Safety Made Easy Powerpoint Presentation
Health and Safety Made Easy Powerpoint PresentationChristopher Maltby
 
Journey Management and Safely Driving Procedure
Journey Management and Safely Driving ProcedureJourney Management and Safely Driving Procedure
Journey Management and Safely Driving ProcedureKawa suur
 
Management system of health and safety.
Management system of health and safety.Management system of health and safety.
Management system of health and safety.Prince Mello
 
Performance Testing
Performance TestingPerformance Testing
Performance Testingsharmaparish
 
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...Edureka!
 
Multi hull vessels
Multi hull vesselsMulti hull vessels
Multi hull vesselsNitin Sharma
 
Testing a GPS application | Testbytes
Testing a GPS application | TestbytesTesting a GPS application | Testbytes
Testing a GPS application | TestbytesTestbytes
 
Lifting equipment at work
Lifting equipment at workLifting equipment at work
Lifting equipment at workPaul Smith
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
ASP exam essential practice questions
ASP exam essential practice questionsASP exam essential practice questions
ASP exam essential practice questionsDaniel Farcas
 
CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120)
CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120) CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120)
CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120) Thorne & Derrick International
 

Tendances (20)

Risk assessment at workplace
Risk assessment at workplaceRisk assessment at workplace
Risk assessment at workplace
 
Powerpoint Risk Assessment
Powerpoint Risk AssessmentPowerpoint Risk Assessment
Powerpoint Risk Assessment
 
Health and Safety Made Easy Powerpoint Presentation
Health and Safety Made Easy Powerpoint PresentationHealth and Safety Made Easy Powerpoint Presentation
Health and Safety Made Easy Powerpoint Presentation
 
Journey Management and Safely Driving Procedure
Journey Management and Safely Driving ProcedureJourney Management and Safely Driving Procedure
Journey Management and Safely Driving Procedure
 
Management system of health and safety.
Management system of health and safety.Management system of health and safety.
Management system of health and safety.
 
Control of Substances Hazardous to Health
Control of Substances Hazardous to HealthControl of Substances Hazardous to Health
Control of Substances Hazardous to Health
 
Safety management
Safety management Safety management
Safety management
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Basic Rigging
Basic RiggingBasic Rigging
Basic Rigging
 
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
Software Testing Tutorial For Beginners | Manual & Automation Testing | Selen...
 
Multi hull vessels
Multi hull vesselsMulti hull vessels
Multi hull vessels
 
Testing a GPS application | Testbytes
Testing a GPS application | TestbytesTesting a GPS application | Testbytes
Testing a GPS application | Testbytes
 
Lifting equipment at work
Lifting equipment at workLifting equipment at work
Lifting equipment at work
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Machine guards
Machine guardsMachine guards
Machine guards
 
Mobile App Testing
Mobile App TestingMobile App Testing
Mobile App Testing
 
Java
JavaJava
Java
 
ASP exam essential practice questions
ASP exam essential practice questionsASP exam essential practice questions
ASP exam essential practice questions
 
CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120)
CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120) CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120)
CATU Dexteri+ Electrical Insulating Gloves (ASTM D 120)
 
Mobile Scaffold Training by UAF
Mobile Scaffold Training by UAFMobile Scaffold Training by UAF
Mobile Scaffold Training by UAF
 

Similaire à Door to perfomance testing

Application Performance Tuning Techniques
Application Performance Tuning TechniquesApplication Performance Tuning Techniques
Application Performance Tuning TechniquesRam Nagesh
 
Performance Testing
Performance TestingPerformance Testing
Performance TestingAnu Shaji
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Atul Pant
 
Importance of System Performance Testing - Bahaa Al Zubaidi.pdf
Importance of System Performance Testing - Bahaa Al Zubaidi.pdfImportance of System Performance Testing - Bahaa Al Zubaidi.pdf
Importance of System Performance Testing - Bahaa Al Zubaidi.pdfBahaa Al Zubaidi
 
SRS for online examination system
SRS for online examination systemSRS for online examination system
SRS for online examination systemlunarrain
 
The process of performance testing
The process of performance testingThe process of performance testing
The process of performance testingSebastián Lagoueyte
 
Online Examination System Project report
Online Examination System Project report Online Examination System Project report
Online Examination System Project report SARASWATENDRA SINGH
 
Performance testing basics
Performance testing basicsPerformance testing basics
Performance testing basicsCharu Anand
 
JavaPerformanceChapter_1
JavaPerformanceChapter_1JavaPerformanceChapter_1
JavaPerformanceChapter_1Saurav Basu
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testingRichard Bishop
 
Performance testing with Jmeter
Performance testing with JmeterPerformance testing with Jmeter
Performance testing with JmeterPrashanth Kumar
 
Query Execution Time and Query Optimization.
Query Execution Time and Query Optimization.Query Execution Time and Query Optimization.
Query Execution Time and Query Optimization.Radhe Krishna Rajan
 
Testing implementation kel 11
Testing implementation kel 11Testing implementation kel 11
Testing implementation kel 11Luthfia Ulinnuha
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeterBhojan Rajan
 
Training Webinar: Detect Performance Bottlenecks of Applications
Training Webinar: Detect Performance Bottlenecks of ApplicationsTraining Webinar: Detect Performance Bottlenecks of Applications
Training Webinar: Detect Performance Bottlenecks of ApplicationsOutSystems
 

Similaire à Door to perfomance testing (20)

Application Performance Tuning Techniques
Application Performance Tuning TechniquesApplication Performance Tuning Techniques
Application Performance Tuning Techniques
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Software Performance
Software Performance Software Performance
Software Performance
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Importance of System Performance Testing - Bahaa Al Zubaidi.pdf
Importance of System Performance Testing - Bahaa Al Zubaidi.pdfImportance of System Performance Testing - Bahaa Al Zubaidi.pdf
Importance of System Performance Testing - Bahaa Al Zubaidi.pdf
 
Load testing jmeter
Load testing jmeterLoad testing jmeter
Load testing jmeter
 
SRS for online examination system
SRS for online examination systemSRS for online examination system
SRS for online examination system
 
The process of performance testing
The process of performance testingThe process of performance testing
The process of performance testing
 
Online Examination System Project report
Online Examination System Project report Online Examination System Project report
Online Examination System Project report
 
Performance testing basics
Performance testing basicsPerformance testing basics
Performance testing basics
 
JavaPerformanceChapter_1
JavaPerformanceChapter_1JavaPerformanceChapter_1
JavaPerformanceChapter_1
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Performance testing with Jmeter
Performance testing with JmeterPerformance testing with Jmeter
Performance testing with Jmeter
 
The process of performance testing
The process of performance testingThe process of performance testing
The process of performance testing
 
Query Execution Time and Query Optimization.
Query Execution Time and Query Optimization.Query Execution Time and Query Optimization.
Query Execution Time and Query Optimization.
 
Testing implementation kel 11
Testing implementation kel 11Testing implementation kel 11
Testing implementation kel 11
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
 
Visual Studio Profiler
Visual Studio ProfilerVisual Studio Profiler
Visual Studio Profiler
 
Training Webinar: Detect Performance Bottlenecks of Applications
Training Webinar: Detect Performance Bottlenecks of ApplicationsTraining Webinar: Detect Performance Bottlenecks of Applications
Training Webinar: Detect Performance Bottlenecks of Applications
 

Plus de Dharshana Kasun Warusavitharana (8)

Follow your dreams
Follow your dreams Follow your dreams
Follow your dreams
 
Automation for developers
Automation for developersAutomation for developers
Automation for developers
 
Quality for developers
Quality for developersQuality for developers
Quality for developers
 
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Implementing Dynamic Process Migration mechanism for WSO2 StratosImplementing Dynamic Process Migration mechanism for WSO2 Stratos
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
 
Wso2 test automation framework internal training
Wso2 test automation framework internal trainingWso2 test automation framework internal training
Wso2 test automation framework internal training
 
Introduction to clarity
Introduction to clarityIntroduction to clarity
Introduction to clarity
 
Walking around linux kernel
Walking around linux kernelWalking around linux kernel
Walking around linux kernel
 
Ariane-5 shuttle Case study fault tollerance
Ariane-5 shuttle Case study fault tolleranceAriane-5 shuttle Case study fault tollerance
Ariane-5 shuttle Case study fault tollerance
 

Dernier

Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 

Dernier (20)

Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 

Door to perfomance testing

  • 1. ReThink Road to effective Performance test Dharshana Warusavitharana
  • 2. Why Performance Test Can traditional testing can capture everything ?????
  • 3. 1. Down time is expensive 2. Functional testing does not reveal concurrent issues 3. Simulation of real time experience 4. Test software meets expectations under expected workloads a. speed, b. scalability and c. stability
  • 4. What is a good performing system
  • 5. 1. Availability 2. Response time 3. Throughput 4. Utilization Relative ( Response time) 1. Greater than 15 seconds 2. Greater than 4 seconds 3. 2 to 4 seconds 4. Less than 2 seconds 5. Sub Second response time 6. Deci-second response time
  • 6. How to Structure a Perf Test
  • 7. The performance-testing approach consists of the following activities: Activity 1. Identify the Test Environment. Activity 2. Identify Performance Acceptance Criteria. Activity 3. Plan and Design Tests. Activity 4. Configure the Test Environment. Activity 5. Implement the Test Design. Activity 6. Execute the Test. Activity 7. Analyze Results, Report, and Retest.
  • 9. 1. Need to know limits of the system 2. Need to understand the bottlenecks of some specific scenarios. 3. Want to check system usability 4. Already faced an issues and need our help in isolating the issue 5. Want to see whether the system meets the defined KPIs 6. Want to test the product that is ready to ship for end users
  • 10. What are solutions in our bucket and When
  • 11. ● Load testing ● Stress testing ● Endurance testing ● Spike testing ● Volume testing ● Scalability testing
  • 12. Performance testing. 1. This type of testing determines or validates the speed, scalability, and/or stability characteristics of the system or application under test. 2. Performance is concerned with achieving response times, throughput, and resource-utilization levels that meet the performance objectives for the project or product.
  • 13. Load testing. Focused on determining or validating performance characteristics of the system or application under test when subjected to workloads and load volumes anticipated during production operations. Endurance / long running tests ○ Run for a long time ○ Determine whether no issues in long run
  • 14. Stress testing. ○ This subcategory of performance testing is focused on determining or validating performance characteristics of the system or application under test when subjected to conditions beyond those anticipated during production operations. ○ Stress tests may also include tests focused on determining or validating performance characteristics of the system or application under test when subjected to other stressful conditions, such as limited memory, insufficient disk space, or server failure. ○ These tests are designed to determine under what conditions an application will fail, how it will fail,
  • 15. What should you ask from customer
  • 16. 1. What makes you think there is a performance problem? 2. Can the problem be expressed in terms of latency/TPS? 3. What is the environment (AWS, Openstack)? 4. What are the user patterns and how users use the system? 5. What are the peak and off peak load expected? 6. What are the products and the versions used ? 7. What are the server and network monitoring key Performance Indicators (KPIs) 8. Configuration/Deployment (if we do not have this information)?
  • 17. Capacity Planning 1. How many end users will actually use the application? 2. How many of these users will use it concurrently? 3. How will the end users connect to the application? 4. How many additional end users will require access to the application over time? 5. What will the final application landscape look like in terms of the number and location of the servers? 6. What effect will the application have on network capacity?
  • 20. 1. Tools are not universal, 2. Need to be creative with the environment. 3. Need to know what to monitor to select right tools . 4. Depends on the customer deployment. 5. Should adjust to the level of access to the system.
  • 21. Designing an Appropriate Performance Test Environment 1. Scaling of the test tool , clustering with load 2. Data collection and deployment of data bases. 3. Configure proxy services, Load balancers to avoid throttling the traffic 4. Scale Up EC2 instances or other PaaS infrastructure to support the load. 5. Deploy monitoring tools
  • 23. 1. Choosing an appropriate performance testing tool 2. Designing an appropriate performance test environment 3. Setting realistic and appropriate performance targets 4. Making sure your application is stable 5. Obtaining a code freeze 6. Identifying and scripting the business-critical transactions 7. Providing sufficient test data of high quality 8. Ensuring accurate performance test design 9. Identifying the server and network monitoring key 10. Performance Indicators (KPIs) 11. Allocating enough time to performance test effectively
  • 25. 1. Processor Usage, Load Average 2. Memory usage 3. Disk time ,Disk queue length 4. Network Bandwidth, Network output queue length 5. Memory pages/second ,Page faults/second 6. Response time ,Throughput 7. Amount of connection pooling 8. Hit ratios ,Hits per second 9. Database locks 10. Thread counts 11. Garbage collection
  • 26. Tools used in monitoring 1. Testing tool it self a. Throughput b. Response time 2. Linux System stats ( SAR recording) a. Load Average b. CPU load c. Memory 3. Linux top command a. Memory allocation for the time 4. Dynatrace/Nagios/Amazon cloud watch 5. Splunk/ Logstash a. Monitor the distributed error logs
  • 27. Debugging , What we need
  • 28. Collect resources for debugging Some resources can be collected in test execution time 1. Heap dumps 2. Thread dumps 3. Garbage collector logs For some need to execute separately 1. JFR recording 2. Jprofiler 3. And other all profiling 4. JDBC spy
  • 29. High CPU 1. JFR 2. Thread IDs and CPU usage of JAVA threads 3. Multiple thread dumps High CPU consumption of a single or multiple application threads
  • 30. High CPU and High GC 1. JFR 2. Thread IDs and CPU usage of JAVA threads 3. Multiple thread dumps 4. GC logs 5. Heap dumps (if necessary) ○ High CPU consumption of a single or multiple application threads ○ High CPU consumption of GC threads ○ Both of the above
  • 31. Application Slows Down, Application Hangs, Request latency increases 1. JFR 2. Thread IDs and CPU usage of JAVA threads 3. Multiple thread dumps 4. Heap dumps (if necessary) 5. GC logs ○ Thread blocks in application threads when unable to obtain a lock ○ Threads continuously wait due to I/O ○ High GC activity during the peak load ○ High CPU consumption of a single or multiple threads during the peak load ○ High CPU consumption of a periodical event ○ Deadlocks
  • 32. High Memory Usage, OOM, Memory Leak 1. JFR 2. GC logs 3. Heap dumps (if necessary) ○ Not enough memory allocated to JVM ○ High memory usage (with no leak) ○ Too many allocations due to auto-boxing ○ Memory leak
  • 35. Reporing 1. Should indicate all your analysis on the current system. 2. Clearly state your assumptions. 3. Tools used and test deployment. 4. Tuning and resource allocations. 5. Test break down and and concurrency details 6. Observations and evidence for observation. 7. Your conclusion. 8. Suggestions with reference and summary.
  • 37. 1. Communication, Communication and Communication 2. For me more i do more i learn 3. Every time I learn a lot 4. Good understanding on basics 5. Flexibility, Some coding skills will be Handy 6. Good on Operating systems 7. Adjustability and communication 8. Skills on performance tooling