SlideShare a Scribd company logo
Performance Testing
Anu Shaji
Performance testing is a non-functional type of testing to determine the system
responsiveness i.e. speed, stability, reliability and scalability
Performance engineering is the process by which software is tested and tuned with
the intent of realizing the required performance. This process aims to optimize the
most important application performance trait, user experience
Types of Performance Testing
Types of Performance Testing (Contd)
Types of Testing Focused Parameter Goals
LOAD TESTING Response Time How well the application behaves under normal load conditions
STRESS TESTING Response Time, Throughput
What happens if the production load exceeds the anticipated load?
What kinds of failures should we plan for?
What indicators should we look for?
SOAK/ENDURANCE TESTING Memory
Is there any memory leaks?
Will performance be consistent over time?
Are there slowly growing problems that have not yet been detected?
VOLUME TESTING Response Time
Whether the system will be able to handle dramatic change in load?
What will be application behavior at various DB levels?
What happens if the production load exceeds the anticipated peak load?
SCALABILITY TESTING Response Time, Transactions per Seconds (TPS)
What is the system MAX TPS?
Is system capacity meeting business volume under both normal and peak
load conditions?
SPIKE TESTING Response Time, Throughput how the system responds to unexpected rise and fall of the user load
Goals of Performance Testing
1. Access the Production Readiness
I. Check the system response time during expected load conditions
II. System behavior during unexpected load conditions
III. Check the system scalability
IV. Best configuration settings for optimal performance
V. System behavior during spike user loads
VI. System stability
2. Compare two platforms with the same software to see which performs better
3. Compare Performance characteristics of system configurations
4. Evaluate System against performance criteria
Pre-Requisites of Performance Testing
1. Stable and defect-free dedicated environment
2. Performance testing environment similar to production environment
3. No other testing should be performed while Performance Testing
4. Performance testing before going live
5. Performance testing plan development
6. Test Data Preparation
I. Performance testing requirements gathering
II. Application architecture
III. Application development technologies
IV. Servers information
V. Application usage information
VI. Application usage patterns
VII. Performance Acceptance criteria
Performance Testing Activities
Baseline and Benchmarks
 Baseline compares application's current performance with its previous performance
 Benchmark compares application performance with industrial standards of performance like
1. Web Server Performance Metrics
• Busy and Idle Threads -Web application serves the request by assigning them to the
server threads which have the capability of executing the request in parallel i.e.
multithreading environment. To evaluate this performance meter, we load the server with
required number of requests and then test the performance after calculating the number
of worker thread idle threads, etc. against the delay in the server response
• Throughput- transactions per second or minute by the web server. It defines the
scalability of the web application.
• Bandwidth requirements: Under this performance parameter, we evaluate the
bottleneck in the network, weight of the web pages while loading, content to CDNs, etc.
Accordingly, we decide the network bandwidth under which the application is going to
operate in an efficient way.
Baseline and Benchmarks(Contd)
2. App Server Performance Metrics
• Load Distribution - It is the measure of the volume of the transactions which are handled by each
JVM (in JAVA), CLR (in .NET) and PHP engine. Next we check if these transactions or the
requests to the app server are properly load balanced or more application servers are required to
handle the load (clustered).
• CPU Hotspots-Here we evaluate the application performance based on the available system
CPU. We check for the CPU utilization on the application server and If CPU utilization is more all
the time and the delays are caused in the responses then we might have to consider to increase the
CPU power. Sometimes more CPU consumption’s are because of the bad programming such as
unnecessary loops in the code, dead code or evaluated values which are not in use, unnecessary
waits in program, etc. Such loop holes in the code should come up in code reviews.
• Worker Threads: It is the measure of the volume of the worker threads which are correctly
configured. How often these threads are busy due to web server unavailability under load or stress
condition and identifying the web server modules that block these threads.
• Memory Issues: This performance parameter deals with the identification of the bad memory
patterns, identification of the memory leak, impact of the garbage collection on the CPU and
Transaction Throughput as these threads are continuously operating in the background while
worker threads are operating, etc.
Baseline and Benchmarks(Contd)
3. Host Health
• CPU, Memory, Disk, Input/Output: It is the measure of the CPU, memory, disk and I/O usage
when the application operates in a production like environment. It should not happen that under
the normal load condition any of these resources get exhausted. We also check for the volume of
the logs that the application is writing to the disk to avoid the flooding the disk.
• Key Processes: It is the measure of the types of processes that run on the box. Which all
processes are consuming the number of resources or creating the deadlock, etc.? At this
performance testing step, we make the decision either to increase the number of resources or
move the processes to other box.
Baseline and Benchmarks(Contd)
4. Software Application Performance Metrics
• Time Spent in Logical Tier or Layer: The enterprise applications are multi-tier e.g. MVC (Model
View and Controller) application. Here, we check which tier is taking more time for execution than
other with the increasing load on the application. This helps in understanding the need to scale that
tier of the application which is the sole creator of the hurdle in the application operation.
• Number of Calls into a Logical Tier or Layer: It is the measure of the calls to the internal Web
Services and other critical APIs such as Hibernate, spring, Struts, etc.
Performance Testing Cycle
Run Test
Analyze Results
• Have the performance criteria been met?
• What are the bottlenecks?
• Who is responsible to fix those bottlenecks?
• Decisions.
Performance Symptoms and Issues
Performance Symptoms and Issues(Contd)
SYMPTOMS OF WEB APPLICATION PERFORMANCE PROBLEMS
1. Long user response time
2. Long server response time
3. Memory leaks
4. High CPU usage
5. Too many open connections
6. Length queues for requests
7. Too many table scans of database
8. Database deadlocks
9. Erroneous data returned
10. HTTP errors
11. Pages not available
12. Page check errors
Performance Symptoms and Issues(Contd)
TYPICAL DATABASE PROBLEMS
• Insufficient indexing: Tune database indexing to improve query processing
• Fragmented databases: Place table records into adjacent pages
• Out-of-date statistics: Degrade query optimizer performance
• Faulty application design: Excessive DB calls, excessive data requests
TYPICAL WEB SERVER PROBLEMS
• Poor server design: Inefficient data or page caching
• Memory problems: Physical memory constraints
TYPICALAPP SERVER PROBLEMS
• Poor database tuning : Application server sending too many DB requests
• Poor cache management : Produces high CPU usage, disk access
• Poor session management : Produces high CPU usage, disk access, Time-outs
• Poor security design : Excessive use of https protocol
• High CPU usage : Usage >70% indicates problems
Performance Symptoms and Issues(Contd)
NETWORK PROBLEMS
Potential sources of network problems:
• Firewall throughput
• Internet access throughput
• Load balancers, gateways, routers
Optimization/Tuning
• Improve current application design: Algorithms, caching, DB calls, memory
use
• Upgrade hardware: RAM, CPU, network bandwidth
• Upgrade software infrastructure: OS, web server, database (database
connection polling)
• Upgrade system architecture: Client-server to basic n-tier, basic n-tier to
enterprise n-tier, software and hardware changes, Use Apache HTTPD in
front of Tomcat to serve static resources, Use hardware load balancing /SSL
Performance Testing Challenges
• Test environment setup
• Collection and Analysis of huge data
• Bottleneck root cause identification
• Cooperative effort required (Product vendors, Architects, Developers, Testers,
Database administrators, System administrators, Network administrators)
• Obtaining accurate results
• Client involvement
• Testing inside the firewall
• Performance testing of new technologies
• Testing on live environment
• Expensive
Thank You!!!!
Ad

More Related Content

What's hot (20)

Software Performance
Software Performance Software Performance
Software Performance
Prabhanshu Saraswat
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
Neev Technologies
 
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
OutSystems
 
Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
iradari
 
Application Performance, Test and Monitoring
Application Performance, Test and MonitoringApplication Performance, Test and Monitoring
Application Performance, Test and Monitoring
Dony Riyanto
 
Performance testing material
Performance testing materialPerformance testing material
Performance testing material
Keylabstraining Bangalore
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
veehikle
 
Performance testing
Performance testingPerformance testing
Performance testing
Ranpreet kaur
 
SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0
Argos
 
Performance Bottleneck Identification
Performance Bottleneck IdentificationPerformance Bottleneck Identification
Performance Bottleneck Identification
Mustufa Batterywala
 
Performance Engineering
Performance EngineeringPerformance Engineering
Performance Engineering
Kumar Gupta
 
Performance testing by optimus information inc
Performance testing by optimus information incPerformance testing by optimus information inc
Performance testing by optimus information inc
Optimus Information Inc.
 
Performance testing
Performance testingPerformance testing
Performance testing
Chalana Kahandawala
 
How to Simplify Load Testing: JMeter and Beyond
How to Simplify Load Testing: JMeter and BeyondHow to Simplify Load Testing: JMeter and Beyond
How to Simplify Load Testing: JMeter and Beyond
Andrey Pokhilko
 
Application Continuity
Application ContinuityApplication Continuity
Application Continuity
Sean Braymen
 
JMeter
JMeterJMeter
JMeter
Abror Khoerun Nizam
 
Concurrent Processing Performance Analysis for Apps DBAs
Concurrent Processing Performance Analysis for Apps DBAsConcurrent Processing Performance Analysis for Apps DBAs
Concurrent Processing Performance Analysis for Apps DBAs
Maris Elsins
 
Performance Testing in Oracle Apps
Performance Testing in Oracle AppsPerformance Testing in Oracle Apps
Performance Testing in Oracle Apps
Biswajit Pratihari
 
Fundamentals Performance Testing
Fundamentals Performance TestingFundamentals Performance Testing
Fundamentals Performance Testing
Bhuvaneswari Subramani
 
Jmeter interviewquestions
Jmeter interviewquestionsJmeter interviewquestions
Jmeter interviewquestions
girichinna27
 
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
OutSystems
 
Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
iradari
 
Application Performance, Test and Monitoring
Application Performance, Test and MonitoringApplication Performance, Test and Monitoring
Application Performance, Test and Monitoring
Dony Riyanto
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
veehikle
 
SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0SAP Performance Testing Best Practice Guide v1.0
SAP Performance Testing Best Practice Guide v1.0
Argos
 
Performance Bottleneck Identification
Performance Bottleneck IdentificationPerformance Bottleneck Identification
Performance Bottleneck Identification
Mustufa Batterywala
 
Performance Engineering
Performance EngineeringPerformance Engineering
Performance Engineering
Kumar Gupta
 
Performance testing by optimus information inc
Performance testing by optimus information incPerformance testing by optimus information inc
Performance testing by optimus information inc
Optimus Information Inc.
 
How to Simplify Load Testing: JMeter and Beyond
How to Simplify Load Testing: JMeter and BeyondHow to Simplify Load Testing: JMeter and Beyond
How to Simplify Load Testing: JMeter and Beyond
Andrey Pokhilko
 
Application Continuity
Application ContinuityApplication Continuity
Application Continuity
Sean Braymen
 
Concurrent Processing Performance Analysis for Apps DBAs
Concurrent Processing Performance Analysis for Apps DBAsConcurrent Processing Performance Analysis for Apps DBAs
Concurrent Processing Performance Analysis for Apps DBAs
Maris Elsins
 
Performance Testing in Oracle Apps
Performance Testing in Oracle AppsPerformance Testing in Oracle Apps
Performance Testing in Oracle Apps
Biswajit Pratihari
 
Jmeter interviewquestions
Jmeter interviewquestionsJmeter interviewquestions
Jmeter interviewquestions
girichinna27
 

Similar to Performance Testing (20)

performancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdfperformancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdf
MAshok10
 
JMeter
JMeterJMeter
JMeter
Md Samsul Kabir
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
Richard Bishop
 
Adding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance TestAdding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance Test
Rodolfo Kohn
 
Performance Testing Overview
Performance Testing OverviewPerformance Testing Overview
Performance Testing Overview
James Venetsanakos
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
Qspiders - Software Testing Training Institute
 
Load testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerLoad testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew Siemer
Andrew Siemer
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Dakiry
 
Application Performance Tuning Techniques
Application Performance Tuning TechniquesApplication Performance Tuning Techniques
Application Performance Tuning Techniques
Ram Nagesh
 
Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1
Suresh Mishra
 
Application Performance Management
Application Performance ManagementApplication Performance Management
Application Performance Management
Noriaki Tatsumi
 
Closing the door on application performance problems
Closing the door on application performance problemsClosing the door on application performance problems
Closing the door on application performance problems
ManageEngine, Zoho Corporation
 
QSpiders - Introduction to JMeter
QSpiders - Introduction to JMeterQSpiders - Introduction to JMeter
QSpiders - Introduction to JMeter
Qspiders - Software Testing Training Institute
 
Bottlenecks exposed
Bottlenecks exposedBottlenecks exposed
Bottlenecks exposed
Vikas Singh
 
Presentation application server diagnostics
Presentation   application server diagnosticsPresentation   application server diagnostics
Presentation application server diagnostics
xKinAnx
 
Laravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and ToolsLaravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and Tools
Muhammad Shehata
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
Bhojan Rajan
 
Door to perfomance testing
Door to perfomance testingDoor to perfomance testing
Door to perfomance testing
Dharshana Kasun Warusavitharana
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunner
techgajanan
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
vladimir zaremba
 
performancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdfperformancetestinganoverview-110206071921-phpapp02.pdf
performancetestinganoverview-110206071921-phpapp02.pdf
MAshok10
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
Richard Bishop
 
Adding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance TestAdding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance Test
Rodolfo Kohn
 
Load testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerLoad testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew Siemer
Andrew Siemer
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Dakiry
 
Application Performance Tuning Techniques
Application Performance Tuning TechniquesApplication Performance Tuning Techniques
Application Performance Tuning Techniques
Ram Nagesh
 
Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1Less11 3 e_loadmodule_1
Less11 3 e_loadmodule_1
Suresh Mishra
 
Application Performance Management
Application Performance ManagementApplication Performance Management
Application Performance Management
Noriaki Tatsumi
 
Bottlenecks exposed
Bottlenecks exposedBottlenecks exposed
Bottlenecks exposed
Vikas Singh
 
Presentation application server diagnostics
Presentation   application server diagnosticsPresentation   application server diagnostics
Presentation application server diagnostics
xKinAnx
 
Laravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and ToolsLaravel Load Testing: Strategies and Tools
Laravel Load Testing: Strategies and Tools
Muhammad Shehata
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
Bhojan Rajan
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunner
techgajanan
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
vladimir zaremba
 
Ad

Recently uploaded (20)

kurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptxkurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptx
TayyabaSiddiqui12
 
cardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugscardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugs
Mohammed Ahmed Bamashmos
 
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvvBasic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
hkthmrz42n
 
Wood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City LibraryWood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City Library
Woods for the Trees
 
ICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - internationalICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - international
Bitcoin Mining RACE
 
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
ASHISHKUMAR504404
 
Bidding World Conference 2027 - NSGF Mexico.pdf
Bidding World Conference 2027 - NSGF Mexico.pdfBidding World Conference 2027 - NSGF Mexico.pdf
Bidding World Conference 2027 - NSGF Mexico.pdf
ISGF - International Scout and Guide Fellowship
 
Reflections on an ngo peace conference in zimbabwe
Reflections on an ngo peace conference in zimbabweReflections on an ngo peace conference in zimbabwe
Reflections on an ngo peace conference in zimbabwe
jujuaw05
 
2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx
Dale Wells
 
A Bot Identification Model and Tool Based on GitHub Activity Sequences
A Bot Identification Model and Tool Based on GitHub Activity SequencesA Bot Identification Model and Tool Based on GitHub Activity Sequences
A Bot Identification Model and Tool Based on GitHub Activity Sequences
natarajan8993
 
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptxBesu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Rajdeep Chakraborty
 
fundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptxfundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptx
Sunkod
 
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptxLec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
TayyabaSiddiqui12
 
Updated treatment of hypothyroidism, causes and symptoms
Updated treatment of hypothyroidism,  causes and symptomsUpdated treatment of hypothyroidism,  causes and symptoms
Updated treatment of hypothyroidism, causes and symptoms
Mohammed Ahmed Bamashmos
 
NASIG ISSN 2025 updated for the_4-30meeting.pptx
NASIG ISSN 2025 updated for the_4-30meeting.pptxNASIG ISSN 2025 updated for the_4-30meeting.pptx
NASIG ISSN 2025 updated for the_4-30meeting.pptx
reine1
 
Bidding World Conference 2027 - Ghana.pptx
Bidding World Conference 2027 - Ghana.pptxBidding World Conference 2027 - Ghana.pptx
Bidding World Conference 2027 - Ghana.pptx
ISGF - International Scout and Guide Fellowship
 
2. Asexual propagation of fruit crops and .pptx
2. Asexual propagation of fruit crops and .pptx2. Asexual propagation of fruit crops and .pptx
2. Asexual propagation of fruit crops and .pptx
aschenakidawit1
 
Speech 3-A Vision for Tomorrow for GE2025
Speech 3-A Vision for Tomorrow for GE2025Speech 3-A Vision for Tomorrow for GE2025
Speech 3-A Vision for Tomorrow for GE2025
Noraini Yunus
 
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdfMicrosoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
MinniePfeiffer
 
The Business Dynamics of Quick Commerce.pdf
The Business Dynamics of Quick Commerce.pdfThe Business Dynamics of Quick Commerce.pdf
The Business Dynamics of Quick Commerce.pdf
RDinuRao
 
kurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptxkurtlewin theory of motivation -181226082203.pptx
kurtlewin theory of motivation -181226082203.pptx
TayyabaSiddiqui12
 
cardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugscardiovascular outcome in trial of new antidiabetic drugs
cardiovascular outcome in trial of new antidiabetic drugs
Mohammed Ahmed Bamashmos
 
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvvBasic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
Basic.pptxsksdjsdjdvkfvfvfvfvfvfvfvfvfvvvv
hkthmrz42n
 
Wood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City LibraryWood Age and Trees of life - talk at Newcastle City Library
Wood Age and Trees of life - talk at Newcastle City Library
Woods for the Trees
 
ICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - internationalICONX - Presentation - Mining RACE - english - international
ICONX - Presentation - Mining RACE - english - international
Bitcoin Mining RACE
 
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
THE SEXUAL HARASSMENT OF WOMAN AT WORKPLACE (PREVENTION, PROHIBITION & REDRES...
ASHISHKUMAR504404
 
Reflections on an ngo peace conference in zimbabwe
Reflections on an ngo peace conference in zimbabweReflections on an ngo peace conference in zimbabwe
Reflections on an ngo peace conference in zimbabwe
jujuaw05
 
2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx2025-05-04 A New Day Dawns 03 (shared slides).pptx
2025-05-04 A New Day Dawns 03 (shared slides).pptx
Dale Wells
 
A Bot Identification Model and Tool Based on GitHub Activity Sequences
A Bot Identification Model and Tool Based on GitHub Activity SequencesA Bot Identification Model and Tool Based on GitHub Activity Sequences
A Bot Identification Model and Tool Based on GitHub Activity Sequences
natarajan8993
 
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptxBesu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Besu Shibpur Enquesta 2012 Intra College General Quiz Prelims.pptx
Rajdeep Chakraborty
 
fundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptxfundamentals of communicationclass notes.pptx
fundamentals of communicationclass notes.pptx
Sunkod
 
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptxLec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
Lec 3 - Chapter 2 Carl Jung’s Theory of Personality.pptx
TayyabaSiddiqui12
 
Updated treatment of hypothyroidism, causes and symptoms
Updated treatment of hypothyroidism,  causes and symptomsUpdated treatment of hypothyroidism,  causes and symptoms
Updated treatment of hypothyroidism, causes and symptoms
Mohammed Ahmed Bamashmos
 
NASIG ISSN 2025 updated for the_4-30meeting.pptx
NASIG ISSN 2025 updated for the_4-30meeting.pptxNASIG ISSN 2025 updated for the_4-30meeting.pptx
NASIG ISSN 2025 updated for the_4-30meeting.pptx
reine1
 
2. Asexual propagation of fruit crops and .pptx
2. Asexual propagation of fruit crops and .pptx2. Asexual propagation of fruit crops and .pptx
2. Asexual propagation of fruit crops and .pptx
aschenakidawit1
 
Speech 3-A Vision for Tomorrow for GE2025
Speech 3-A Vision for Tomorrow for GE2025Speech 3-A Vision for Tomorrow for GE2025
Speech 3-A Vision for Tomorrow for GE2025
Noraini Yunus
 
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdfMicrosoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
Microsoft Azure Data Fundamentals (DP-900) Exam Dumps & Questions 2025.pdf
MinniePfeiffer
 
The Business Dynamics of Quick Commerce.pdf
The Business Dynamics of Quick Commerce.pdfThe Business Dynamics of Quick Commerce.pdf
The Business Dynamics of Quick Commerce.pdf
RDinuRao
 
Ad

Performance Testing

  • 2. Performance testing is a non-functional type of testing to determine the system responsiveness i.e. speed, stability, reliability and scalability Performance engineering is the process by which software is tested and tuned with the intent of realizing the required performance. This process aims to optimize the most important application performance trait, user experience
  • 4. Types of Performance Testing (Contd) Types of Testing Focused Parameter Goals LOAD TESTING Response Time How well the application behaves under normal load conditions STRESS TESTING Response Time, Throughput What happens if the production load exceeds the anticipated load? What kinds of failures should we plan for? What indicators should we look for? SOAK/ENDURANCE TESTING Memory Is there any memory leaks? Will performance be consistent over time? Are there slowly growing problems that have not yet been detected? VOLUME TESTING Response Time Whether the system will be able to handle dramatic change in load? What will be application behavior at various DB levels? What happens if the production load exceeds the anticipated peak load? SCALABILITY TESTING Response Time, Transactions per Seconds (TPS) What is the system MAX TPS? Is system capacity meeting business volume under both normal and peak load conditions? SPIKE TESTING Response Time, Throughput how the system responds to unexpected rise and fall of the user load
  • 5. Goals of Performance Testing 1. Access the Production Readiness I. Check the system response time during expected load conditions II. System behavior during unexpected load conditions III. Check the system scalability IV. Best configuration settings for optimal performance V. System behavior during spike user loads VI. System stability 2. Compare two platforms with the same software to see which performs better 3. Compare Performance characteristics of system configurations 4. Evaluate System against performance criteria
  • 6. Pre-Requisites of Performance Testing 1. Stable and defect-free dedicated environment 2. Performance testing environment similar to production environment 3. No other testing should be performed while Performance Testing 4. Performance testing before going live 5. Performance testing plan development 6. Test Data Preparation I. Performance testing requirements gathering II. Application architecture III. Application development technologies IV. Servers information V. Application usage information VI. Application usage patterns VII. Performance Acceptance criteria
  • 8. Baseline and Benchmarks  Baseline compares application's current performance with its previous performance  Benchmark compares application performance with industrial standards of performance like 1. Web Server Performance Metrics • Busy and Idle Threads -Web application serves the request by assigning them to the server threads which have the capability of executing the request in parallel i.e. multithreading environment. To evaluate this performance meter, we load the server with required number of requests and then test the performance after calculating the number of worker thread idle threads, etc. against the delay in the server response • Throughput- transactions per second or minute by the web server. It defines the scalability of the web application. • Bandwidth requirements: Under this performance parameter, we evaluate the bottleneck in the network, weight of the web pages while loading, content to CDNs, etc. Accordingly, we decide the network bandwidth under which the application is going to operate in an efficient way.
  • 9. Baseline and Benchmarks(Contd) 2. App Server Performance Metrics • Load Distribution - It is the measure of the volume of the transactions which are handled by each JVM (in JAVA), CLR (in .NET) and PHP engine. Next we check if these transactions or the requests to the app server are properly load balanced or more application servers are required to handle the load (clustered). • CPU Hotspots-Here we evaluate the application performance based on the available system CPU. We check for the CPU utilization on the application server and If CPU utilization is more all the time and the delays are caused in the responses then we might have to consider to increase the CPU power. Sometimes more CPU consumption’s are because of the bad programming such as unnecessary loops in the code, dead code or evaluated values which are not in use, unnecessary waits in program, etc. Such loop holes in the code should come up in code reviews. • Worker Threads: It is the measure of the volume of the worker threads which are correctly configured. How often these threads are busy due to web server unavailability under load or stress condition and identifying the web server modules that block these threads. • Memory Issues: This performance parameter deals with the identification of the bad memory patterns, identification of the memory leak, impact of the garbage collection on the CPU and Transaction Throughput as these threads are continuously operating in the background while worker threads are operating, etc.
  • 10. Baseline and Benchmarks(Contd) 3. Host Health • CPU, Memory, Disk, Input/Output: It is the measure of the CPU, memory, disk and I/O usage when the application operates in a production like environment. It should not happen that under the normal load condition any of these resources get exhausted. We also check for the volume of the logs that the application is writing to the disk to avoid the flooding the disk. • Key Processes: It is the measure of the types of processes that run on the box. Which all processes are consuming the number of resources or creating the deadlock, etc.? At this performance testing step, we make the decision either to increase the number of resources or move the processes to other box.
  • 11. Baseline and Benchmarks(Contd) 4. Software Application Performance Metrics • Time Spent in Logical Tier or Layer: The enterprise applications are multi-tier e.g. MVC (Model View and Controller) application. Here, we check which tier is taking more time for execution than other with the increasing load on the application. This helps in understanding the need to scale that tier of the application which is the sole creator of the hurdle in the application operation. • Number of Calls into a Logical Tier or Layer: It is the measure of the calls to the internal Web Services and other critical APIs such as Hibernate, spring, Struts, etc.
  • 14. Analyze Results • Have the performance criteria been met? • What are the bottlenecks? • Who is responsible to fix those bottlenecks? • Decisions.
  • 16. Performance Symptoms and Issues(Contd) SYMPTOMS OF WEB APPLICATION PERFORMANCE PROBLEMS 1. Long user response time 2. Long server response time 3. Memory leaks 4. High CPU usage 5. Too many open connections 6. Length queues for requests 7. Too many table scans of database 8. Database deadlocks 9. Erroneous data returned 10. HTTP errors 11. Pages not available 12. Page check errors
  • 17. Performance Symptoms and Issues(Contd) TYPICAL DATABASE PROBLEMS • Insufficient indexing: Tune database indexing to improve query processing • Fragmented databases: Place table records into adjacent pages • Out-of-date statistics: Degrade query optimizer performance • Faulty application design: Excessive DB calls, excessive data requests TYPICAL WEB SERVER PROBLEMS • Poor server design: Inefficient data or page caching • Memory problems: Physical memory constraints TYPICALAPP SERVER PROBLEMS • Poor database tuning : Application server sending too many DB requests • Poor cache management : Produces high CPU usage, disk access • Poor session management : Produces high CPU usage, disk access, Time-outs • Poor security design : Excessive use of https protocol • High CPU usage : Usage >70% indicates problems
  • 18. Performance Symptoms and Issues(Contd) NETWORK PROBLEMS Potential sources of network problems: • Firewall throughput • Internet access throughput • Load balancers, gateways, routers
  • 19. Optimization/Tuning • Improve current application design: Algorithms, caching, DB calls, memory use • Upgrade hardware: RAM, CPU, network bandwidth • Upgrade software infrastructure: OS, web server, database (database connection polling) • Upgrade system architecture: Client-server to basic n-tier, basic n-tier to enterprise n-tier, software and hardware changes, Use Apache HTTPD in front of Tomcat to serve static resources, Use hardware load balancing /SSL
  • 20. Performance Testing Challenges • Test environment setup • Collection and Analysis of huge data • Bottleneck root cause identification • Cooperative effort required (Product vendors, Architects, Developers, Testers, Database administrators, System administrators, Network administrators) • Obtaining accurate results • Client involvement • Testing inside the firewall • Performance testing of new technologies • Testing on live environment • Expensive