SlideShare a Scribd company logo
1 of 30
ISTQB Specialist
Performance Testing
Neeraj Kumar Singh
Neeraj Kumar Singh
Global Testing Consultant
ISTQB and HP Certified trainer with 12+ years of experience in
Training and delivery. Also a certified Global testing Consultant.
Have delivered 500+ training for 10000+ participants in 100+
corporate Organisation across 26 Countries.
Instructor | Consultant | Author
 About ISTQB
 Certifications
 Validity
Neeraj Kumar Singh
INTRODUCTION TO ISTQB
Neeraj Kumar Singh
CERTIFICATIONS
 Prerequisite
 Exam type – Objective/Multiple Choice
 Number of Questions – 40 (40 Marks)
 Duration – 90 Min
 Schedule
 Location/Venue
 Passing score – 65% (26 Marks)
Neeraj Kumar Singh
INTRODUCTION TO ISTQB
About Performance Testing Exam
 K1 - Remember
 K2 - Understand
 K3 – Apply
 K4 – Analyze
Neeraj Kumar Singh
K LEVELS
Effort for Preparation
 Chapter 1 – Basics Concepts
 Chapter 2 – Performance Measurement Fundamentals
 Chapter 3 – Performance Testing in the Software Lifecycle
 Chapter 4 – Performance Testing Tasks
 Chapter 5 – Tools
Neeraj Kumar Singh
PERFORMANCE TESTING SYLLABUS
Basic Concepts
1 Basic Concepts
2 Performance
Measurements
3 Performance
Testing in SDLC
Software Testing - ISTQB Specialist
Performance Testing Exam Preparation
Chapter 1
Neeraj Kumar Singh
4 Performance
Testing Tasks
5 Tools
Basic Concepts
Contents
1.1 Principles and Concepts
1.2 Types of Performance Testing
1.3 Testing Types in Performance Testing
1.4 The Concept of Load Generation
1.5 Common Failures in Performance
Testing and Their Causes
Neeraj Kumar Singh
Basic Concepts
Principles of Performance Testing
Performance efficiency (or simply “performance”) is an essential part of providing a “good experience” for users
when they use their applications on a variety of fixed and mobile platforms.
Performance testing plays a critical role in establishing acceptable quality levels for the end user and is often
closely integrated with other disciplines such as usability engineering and performance engineering.
Additionally, evaluation of functional suitability, usability and other quality characteristics under conditions of
load, such as during execution of a performance test, may reveal load-specific issues which impact those
characteristics.
Performance testing is not limited to the web-based domain where the end user is the focus. It is also relevant to
different application domains with a variety of system architectures, such as classic client-server, distributed and
embedded.
Product Quality Model as a non-functional quality characteristic with the three sub-characteristics described in
next slide. Proper focus and prioritization depends on the risks assessed and the needs of the various stakeholders.
Test results analysis may identify other areas of risk that need to be addressed.
Neeraj Kumar Singh
Basic Concepts
Principles of Performance Testing
Time Behavior: Generally the evaluation of time behavior is the most common performance testing objective. This
aspect of performance testing examines the ability of a component or system to respond to user or system inputs
within a specified time and under specified conditions. Measurements of time behavior may vary from the “end-to-
end” time taken by the system to responding to user input, to the number of CPU cycles required by a software
component to execute a particular task.
Resource Utilization: If the availability of system resources is identified as a risk, the utilization of those
resources (e.g., the allocation of limited RAM) may be investigated by conducting specific performance tests.
Capacity: If issues of system behavior at the required capacity limits of the system (e.g., numbers of users or
volumes of data) is identified as a risk, performance tests may be conducted to evaluate the suitability of the
system architecture.
Performance testing often takes the form of experimentation, which enables measurement and analysis of specific
system parameters to take place. These may be conducted iteratively in support of system analysis, design and
implementation to enable architectural decisions to be made and to help shape stakeholder expectations.
All three of the above quality sub-characteristics will impact the ability of the system under test (SUT) to scale.
Neeraj Kumar Singh
Basic Concepts
Principles of Performance Testing
The following performance testing principles are particularly relevant.
 Tests must be aligned to the defined expectations of different stakeholder groups, in particular users, system
designers and operations staff.
 The tests must be reproducible. Statistically identical results (within a specified tolerance) must be obtained
by repeating the tests on an unchanged system.
 The tests must yield results that are both understandable and can be readily compared to stakeholder
expectations.
 The tests can be conducted, where resources allow, either on complete or partial systems or test
environments that are representative of the production system.
 The tests must be practically affordable and executable within the timeframe set by the project.
Neeraj Kumar Singh
Basic Concepts
Contents
1.1 Principles and Concepts
1.2 Types of Performance Testing
1.3 Testing Types in Performance Testing
1.4 The Concept of Load Generation
1.5 Common Failures in Performance
Testing and Their Causes
Neeraj Kumar Singh
Basic Concepts
Types of Performance Testing
Different types of performance testing can be defined. Each of these may be applicable to a given project,
depending on the objectives of the test.
Performance Testing - Performance testing is an umbrella term including any kind of testing focused on
performance (responsiveness) of the system or component under different volumes of load.
Load Testing - Load testing focuses on the ability of a system to handle increasing levels of anticipated realistic
loads resulting from transaction requests generated by controlled numbers of concurrent users or processes.
Stress Testing - Stress testing focuses on the ability of a system or component to handle peak loads that are at or
beyond the limits of its anticipated or specified workloads. Stress testing is also used to evaluate a system’s ability
to handle reduced availability of resources such as accessible computing capacity, available bandwidth, and
memory.
Scalability Testing - Scalability testing focuses on the ability of a system to meet future efficiency requirements
which may be beyond those currently required. The objective of these tests is to determine the system’s ability to
grow (e.g., with more users, larger amounts of data stored) without violating the currently specified performance
requirements or failing.
Neeraj Kumar Singh
Basic Concepts
Types of Performance Testing
Spike Testing - Spike testing focuses on the ability of a system to respond correctly to sudden bursts of peak loads
and return afterwards to a steady state.
Endurance Testing - Endurance testing focuses on the stability of the system over a time frame specific to the
system’s operational context. This type of testing verifies that there are no resource capacity problems (e.g.,
memory leaks, database connections, thread pools) that may eventually degrade performance and/or cause
failures at breaking points.
Concurrency Testing - Concurrency testing focuses on the impact of situations where specific actions occur
simultaneously (e.g., when large numbers of users log in at the same time). Concurrency issues are notoriously
difficult to find and reproduce, particularly when the problem occurs in an environment where testing has little or
no control, such as production.
Capacity Testing - Capacity testing determines how many users and/or transactions a given system will support
and still meet the stated performance objectives. These objectives may also be stated with regard to the data
volumes resulting from the transactions.
Neeraj Kumar Singh
Basic Concepts
Contents
1.1 Principles and Concepts
1.2 Types of Performance Testing
1.3 Testing Types in Performance Testing
1.4 The Concept of Load Generation
1.5 Common Failures in Performance
Testing and Their Causes
Neeraj Kumar Singh
Basic Concepts
Testing Types in Performance Testing
The principal testing types used in performance testing include static testing and dynamic testing.
Static testing
Static testing activities are often more important for performance testing than for functional suitability testing.
This is because so many critical performance defects are introduced in the architecture and design of the system.
These defects can be introduced by misunderstandings or a lack of knowledge by the designers and architects.
These defects can also be introduced because the requirements did not adequately capture the response time,
throughput, or resource utilization targets, the expected load and usage of the system, or the constraints.
Static testing activities for performance can include:
 Reviews of requirements with focus on performance aspects and risks
 Reviews of database schemas, entity-relationship diagrams, metadata, stored procedures and queries
 Reviews of the system and network architecture
 Reviews of critical segments of the system code (e.g., complex algorithms)
Neeraj Kumar Singh
Basic Concepts
Testing Types in Performance Testing
Dynamic testing
As the system is built, dynamic performance testing should start as soon as possible. Opportunities for dynamic
performance testing include:
 During unit testing, including using profiling information to determine potential bottlenecks and dynamic
analysis to evaluate resource utilization
 During component integration testing, across key use cases and workflows, especially when integrating
different use case features or integrating with the “backbone” structure of a workflow
 During system testing of overall end-to-end behaviors under various load conditions
 During system integration testing, especially for data flows and workflows across key inter-system interfaces.
In system integration testing is not uncommon for the “user” to be another system or machine (e.g. inputs
from sensor inputs and other systems )
 During acceptance testing, to build user, customer, and operator confidence in the proper performance of the
system and to fine tune the system under real world conditions (but generally not to find performance defects
in the system)
Neeraj Kumar Singh
Basic Concepts
Contents
1.1 Principles and Concepts
1.2 Types of Performance Testing
1.3 Testing Types in Performance Testing
1.4 The Concept of Load Generation
1.5 Common Failures in Performance
Testing and Their Causes
Neeraj Kumar Singh
Basic Concepts
The Concept of Load Generation
In order to carry out the various types of performance testing, representative system loads must be modeled,
generated and submitted to the system under test. Loads are comparable to the data inputs used for functional
test cases, but differ in the following principal ways:
 A performance test load must represent many user inputs, not just one
 A performance test load may require dedicated hardware and tools for generation
 Generation of a performance test load is dependent on the absence of any functional defects in the system
under test which may impact test execution
The efficient and reliable generation of a specified load is a key success factor when conducting performance
tests. There are different options for load generation.
Load Generation via the User Interface
This may be an adequate approach if only a small number of users are to be represented and if the required
numbers of software clients are available from which to enter required inputs. This approach may also be used in
conjunction with functional test execution tools, but may rapidly become impractical as the numbers of users to
be simulated increases.
The stability of the user interface (UI) also represents a critical dependency. Frequent changes can impact the
repeatability of performance tests and may significantly affect the maintenance costs. Testing through the UI may
be the most representative approach for end-to-end tests.
Neeraj Kumar Singh
Basic Concepts
The Concept of Load Generation
Load Generation using Crowds
This approach depends on the availability of a large number of testers who will represent real users. In crowd
testing, the testers are organized such that the desired load can be generated. This may be a suitable method for
testing applications that are reachable from anywhere in the world (e.g., web-based), and may involve the users
generating a load from a wide range of different device types and configurations.
Load Generation via the Application Programming Interface (API)
This approach is similar to using the UI for data entry, but uses the application’s API instead of the UI to simulate
user interaction with the system under test. The approach is therefore less sensitive to changes (e.g., delays) in
the UI and allows the transactions to be processed in the same way as they would if entered directly by a user via
the UI. Dedicated scripts may be created which repeatedly call specific API routines and enable more users to be
simulated compared to using UI inputs.
Load Generation using Captured Communication Protocols
This approach involves capturing user interaction with the system under test at the communications protocol level
and then replaying these scripts to simulate potentially very large numbers of users in a repeatable and reliable
manner.
Neeraj Kumar Singh
Basic Concepts
Contents
1.1 Principles and Concepts
1.2 Types of Performance Testing
1.3 Testing Types in Performance Testing
1.4 The Concept of Load Generation
1.5 Common Failures in Performance
Testing and Their Causes
Neeraj Kumar Singh
Basic Concepts
Common Performance Efficiency Failure Modes and Their
Causes
While there certainly are many different performance failure modes that can be found during dynamic testing, the
following are some examples of common failures (including system crashes), along with typical causes:
Slow response under all load levels
In some cases, response is unacceptable regardless of load. This may be caused by underlying performance issues,
including, but not limited to, bad database design or implementation, network latency, and other background
loads. Such issues can be identified during functional and usability testing, not just performance testing, so test
analysts should keep an eye open for them and report them.
Slow response under moderate-to-heavy load levels
In some cases, response degrades unacceptably with moderate-to-heavy load, even when such loads are entirely
within normal, expected, allowed ranges. Underlying defects include saturation of one or more resources and
varying background loads.
Neeraj Kumar Singh
Basic Concepts
Common Performance Efficiency Failure Modes and Their
Causes
Degraded response over time
In some cases, response degrades gradually or severely over time. Underlying causes include memory leaks, disk
fragmentation, increasing network load over time, growth of the file repository, and unexpected database growth.
Inadequate or graceless error handling under heavy or over-limit load
In some cases, response time is acceptable but error handling degrades at high and beyond-limit load levels.
Underlying defects include insufficient resource pools, undersized queues and stacks, and too rapid time-out
settings.
Neeraj Kumar Singh
Basic Concepts
Common Performance Efficiency Failure Modes and Their
Causes
Specific examples of the general types of failures listed above include:
 A web-based application that provides information about a company’s services does not respond to user
requests within seven seconds (a general industry rule of thumb). The performance efficiency of the system
cannot be achieved under specific load conditions.
 A system crashes or is unable to respond to user inputs when subjected to a sudden large number of user
requests (e.g., ticket sales for a major sporting event). The capacity of the system to handle this number of
users is inadequate.
 System response is significantly degraded when users submit requests for large amounts of data (e.g., a large
and important report is posted on a web site for download). The capacity of the system to handle the
generated data volumes is insufficient.
 Batch processing is unable to complete before online processing is needed. The execution time of the batch
processes is insufficient for the time period allowed.
 A real-time system runs out of RAM when parallel processes generate large demands for dynamic memory
which cannot be released in time. The RAM is not dimensioned adequately, or requests for RAM are not
adequately prioritized.
 A real-time system component A which supplies inputs to real-time system component B is unable to calculate
updates at the required rate. The overall system fails to respond in time and may fail. Code modules in
component A must be evaluated and modified (“performance profiling”) to ensure that the required update
rates can be achieved.
Neeraj Kumar Singh
Basic Concepts
1 Basic Concepts
2 Performance
Measurements
3 Performance
Testing in SDLC
Software Testing - ISTQB Specialist
Performance Testing Exam Preparation
Chapter 1
Neeraj Kumar Singh
4 Performance
Testing Tasks
5 Tools
Neeraj Kumar Singh
Basic Concepts
Sample Questions Pattern
Source : istqb.org
1. Which of the following is the best description of spike testing?
Select ONE option.
Answer Set
a. It focuses on the ability of the system to handle loads that are gradually increased to reach the expected maximum
b. It focuses on the ability of the system to handle loads that are at or beyond the expected peak load
c. It focuses on the ability of the system to meet future efficiency requirements
d. It focuses on the ability of the system to respond to quick and extreme changes in load
Basic Concepts
Sample Question
2. Which of the following performance testing activities should occur during unit testing?
Select ONE option.
Answer Set
a. Testing end-to-end behavior under various load conditions
b. Testing data flows and workflows across interfaces
c. Testing key use cases and workflows using a top-down approach
d. Testing to evaluate resource utilization and potential bottlenecks
Basic Concepts
Sample Question
3. When is it appropriate to generate load via the application’s APIs?
Select ONE option.
Answer Set
a. When a large number of testers are available who can represent the real users
b. When testing must be conducted at the communications protocol level
c. When the UI is likely to change but the transactions must be processed as if they were created through the UI
d. When only small numbers of test instances are available
Basic Concepts
Sample Question

More Related Content

What's hot

Chapter 5 - Improving the Testing Process
Chapter 5 -  Improving the Testing ProcessChapter 5 -  Improving the Testing Process
Chapter 5 - Improving the Testing ProcessNeeraj Kumar Singh
 
Chapter 4 - Test Design Techniques
Chapter 4 - Test Design TechniquesChapter 4 - Test Design Techniques
Chapter 4 - Test Design TechniquesNeeraj Kumar Singh
 
Chapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical TestingChapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical TestingNeeraj Kumar Singh
 
Chapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksChapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksNeeraj Kumar Singh
 
Chapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationChapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationNeeraj Kumar Singh
 
Chapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of TestingChapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of TestingNeeraj Kumar Singh
 
Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesNeeraj Kumar Singh
 
Chapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology DriversChapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology DriversNeeraj Kumar Singh
 
Chapter 4 - Deployment & Delivery
Chapter 4 - Deployment & DeliveryChapter 4 - Deployment & Delivery
Chapter 4 - Deployment & DeliveryNeeraj Kumar Singh
 

What's hot (20)

Chapter 2 - Test Management
Chapter 2 - Test ManagementChapter 2 - Test Management
Chapter 2 - Test Management
 
Chapter 5 - Improving the Testing Process
Chapter 5 -  Improving the Testing ProcessChapter 5 -  Improving the Testing Process
Chapter 5 - Improving the Testing Process
 
Chapter 4 - Test Design Techniques
Chapter 4 - Test Design TechniquesChapter 4 - Test Design Techniques
Chapter 4 - Test Design Techniques
 
Chapter 1 - Testing Process
Chapter 1 - Testing ProcessChapter 1 - Testing Process
Chapter 1 - Testing Process
 
Chapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical TestingChapter 4 - Quality Characteristics for Technical Testing
Chapter 4 - Quality Characteristics for Technical Testing
 
Chapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing TasksChapter 4 - Performance Testing Tasks
Chapter 4 - Performance Testing Tasks
 
Chapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationChapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and Automation
 
Chapter 2 - Test Management
Chapter 2 - Test ManagementChapter 2 - Test Management
Chapter 2 - Test Management
 
Chapter 2 - Testing in Agile
Chapter 2 - Testing in AgileChapter 2 - Testing in Agile
Chapter 2 - Testing in Agile
 
Chapter 3 - Test Automation
Chapter 3 - Test AutomationChapter 3 - Test Automation
Chapter 3 - Test Automation
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 
Chapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of TestingChapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of Testing
 
Chapter 5 - Reviews
Chapter 5 - ReviewsChapter 5 - Reviews
Chapter 5 - Reviews
 
Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test Types
 
CTFL Module 01
CTFL Module 01CTFL Module 01
CTFL Module 01
 
Chapter 3 - Reviews
Chapter 3 - ReviewsChapter 3 - Reviews
Chapter 3 - Reviews
 
Chapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology DriversChapter 1 - Mobile World - Business and Technology Drivers
Chapter 1 - Mobile World - Business and Technology Drivers
 
Chapter 1 - Testing Process
Chapter 1 - Testing ProcessChapter 1 - Testing Process
Chapter 1 - Testing Process
 
Chapter 4 - Deployment & Delivery
Chapter 4 - Deployment & DeliveryChapter 4 - Deployment & Delivery
Chapter 4 - Deployment & Delivery
 
Chapter 5 - Reviews
Chapter 5 - ReviewsChapter 5 - Reviews
Chapter 5 - Reviews
 

Similar to ISTQB Specialist Performance Testing Exam Prep

Best Practices for Applications Performance Testing
Best Practices for Applications Performance TestingBest Practices for Applications Performance Testing
Best Practices for Applications Performance TestingBhaskara Reddy Sannapureddy
 
Non Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar MohanNon Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar MohanSampath kumar Mohan
 
Performance testing methodologies
Performance testing methodologiesPerformance testing methodologies
Performance testing methodologiesDhanunjay Rasamala
 
performance testing training in hyderabad
performance testing training in hyderabadperformance testing training in hyderabad
performance testing training in hyderabadshaikmadarbi3zen
 
Performance Testing Training in Hyderabad
Performance Testing Training in HyderabadPerformance Testing Training in Hyderabad
Performance Testing Training in Hyderabadrajasrichalamala3zen
 
performance testing training in hyderabad
performance testing training in hyderabadperformance testing training in hyderabad
performance testing training in hyderabadaparna3zen
 
performance testing training in hyderabad
performance testing training in hyderabadperformance testing training in hyderabad
performance testing training in hyderabadmadhupriya3zen
 
Performance Testing.3zen.pdf
Performance Testing.3zen.pdfPerformance Testing.3zen.pdf
Performance Testing.3zen.pdfswathi3zen
 
Chapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsChapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsNeeraj Kumar Singh
 
Testing Types And Models
Testing Types And ModelsTesting Types And Models
Testing Types And Modelsnazeer pasha
 
Chaos Testing of Microservices - Shalamov Maksym
 Chaos Testing of Microservices  - Shalamov Maksym Chaos Testing of Microservices  - Shalamov Maksym
Chaos Testing of Microservices - Shalamov MaksymKuberton
 
Testing throughout the software life cycle - Testing & Implementation
Testing throughout the software life cycle - Testing & ImplementationTesting throughout the software life cycle - Testing & Implementation
Testing throughout the software life cycle - Testing & Implementationyogi syafrialdi
 
Ppt 2 testing throughout the software life cycle
Ppt 2 testing throughout the software life cyclePpt 2 testing throughout the software life cycle
Ppt 2 testing throughout the software life cyclesanti suryani
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional TestingNishant Worah
 
Testing throughout the software life cycle (test levels)
Testing throughout the software life cycle (test levels)Testing throughout the software life cycle (test levels)
Testing throughout the software life cycle (test levels)tyas setyo
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycleAchmad Harpin Asrori
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingKumari Warsha Goel
 

Similar to ISTQB Specialist Performance Testing Exam Prep (20)

Best Practices for Applications Performance Testing
Best Practices for Applications Performance TestingBest Practices for Applications Performance Testing
Best Practices for Applications Performance Testing
 
Non Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar MohanNon Functional Testing_Sampath kumar Mohan
Non Functional Testing_Sampath kumar Mohan
 
Performance testing methodologies
Performance testing methodologiesPerformance testing methodologies
Performance testing methodologies
 
performance testing training in hyderabad
performance testing training in hyderabadperformance testing training in hyderabad
performance testing training in hyderabad
 
Performance Testing Training in Hyderabad
Performance Testing Training in HyderabadPerformance Testing Training in Hyderabad
Performance Testing Training in Hyderabad
 
performance testing training in hyderabad
performance testing training in hyderabadperformance testing training in hyderabad
performance testing training in hyderabad
 
performance testing training in hyderabad
performance testing training in hyderabadperformance testing training in hyderabad
performance testing training in hyderabad
 
Performance Testing.3zen.pdf
Performance Testing.3zen.pdfPerformance Testing.3zen.pdf
Performance Testing.3zen.pdf
 
System testing
System testingSystem testing
System testing
 
System testing
System testingSystem testing
System testing
 
Chapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsChapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality Characteristics
 
Testing Types And Models
Testing Types And ModelsTesting Types And Models
Testing Types And Models
 
Chaos Testing of Microservices - Shalamov Maksym
 Chaos Testing of Microservices  - Shalamov Maksym Chaos Testing of Microservices  - Shalamov Maksym
Chaos Testing of Microservices - Shalamov Maksym
 
Testing throughout the software life cycle - Testing & Implementation
Testing throughout the software life cycle - Testing & ImplementationTesting throughout the software life cycle - Testing & Implementation
Testing throughout the software life cycle - Testing & Implementation
 
Ppt 2 testing throughout the software life cycle
Ppt 2 testing throughout the software life cyclePpt 2 testing throughout the software life cycle
Ppt 2 testing throughout the software life cycle
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional Testing
 
Testing ppts 20 march
Testing ppts 20 marchTesting ppts 20 march
Testing ppts 20 march
 
Testing throughout the software life cycle (test levels)
Testing throughout the software life cycle (test levels)Testing throughout the software life cycle (test levels)
Testing throughout the software life cycle (test levels)
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycle
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software Testing
 

More from Neeraj Kumar Singh

Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentNeeraj Kumar Singh
 
Chapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile ApplicationsChapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile ApplicationsNeeraj Kumar Singh
 
ISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample QuestionsISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample QuestionsNeeraj Kumar Singh
 
ISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' AnswersISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' AnswersNeeraj Kumar Singh
 
ISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study MaterialISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study MaterialNeeraj Kumar Singh
 
Chapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team CompositionChapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team CompositionNeeraj Kumar Singh
 
ISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question PaperISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question PaperNeeraj Kumar Singh
 
ISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question PaperISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question PaperNeeraj Kumar Singh
 
ISTQB Advance level syllabus 2019 Technical Test Analyst
ISTQB Advance level syllabus 2019 Technical Test AnalystISTQB Advance level syllabus 2019 Technical Test Analyst
ISTQB Advance level syllabus 2019 Technical Test AnalystNeeraj Kumar Singh
 
Chapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationChapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationNeeraj Kumar Singh
 
Chapter 3 - Analytical Techniques
Chapter 3 - Analytical TechniquesChapter 3 - Analytical Techniques
Chapter 3 - Analytical TechniquesNeeraj Kumar Singh
 
Chapter 2 - White Box Test Techniques
Chapter 2 - White Box Test TechniquesChapter 2 - White Box Test Techniques
Chapter 2 - White Box Test TechniquesNeeraj Kumar Singh
 
Chapter 1 - The Technical Test Analyst Tasks in Risk Based Testing
Chapter 1 - The Technical Test Analyst Tasks in Risk Based TestingChapter 1 - The Technical Test Analyst Tasks in Risk Based Testing
Chapter 1 - The Technical Test Analyst Tasks in Risk Based TestingNeeraj Kumar Singh
 
ISTQB Agile Technical Tester Answers for Sample Question Paper
ISTQB Agile Technical Tester Answers for Sample Question PaperISTQB Agile Technical Tester Answers for Sample Question Paper
ISTQB Agile Technical Tester Answers for Sample Question PaperNeeraj Kumar Singh
 
ISTQB Agile Technical Tester Sample Question Paper
ISTQB Agile Technical Tester Sample Question PaperISTQB Agile Technical Tester Sample Question Paper
ISTQB Agile Technical Tester Sample Question PaperNeeraj Kumar Singh
 

More from Neeraj Kumar Singh (16)

Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and Environment
 
Chapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile ApplicationsChapter 3 - Common Test Types and Test Process for Mobile Applications
Chapter 3 - Common Test Types and Test Process for Mobile Applications
 
ISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample QuestionsISTQB Performance Tester Sample Questions
ISTQB Performance Tester Sample Questions
 
ISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' AnswersISTQB Performance Tester Sample Questions' Answers
ISTQB Performance Tester Sample Questions' Answers
 
ISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study MaterialISTQB Performance Tester Certification Syllabus and Study Material
ISTQB Performance Tester Certification Syllabus and Study Material
 
Chapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team CompositionChapter 7 - People Skills and Team Composition
Chapter 7 - People Skills and Team Composition
 
Chapter 4 - Defect Management
Chapter 4 - Defect ManagementChapter 4 - Defect Management
Chapter 4 - Defect Management
 
ISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question PaperISTQB Technical Test Analyst Answers to Sample Question Paper
ISTQB Technical Test Analyst Answers to Sample Question Paper
 
ISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question PaperISTQB Technical Test Analyst Sample Question Paper
ISTQB Technical Test Analyst Sample Question Paper
 
ISTQB Advance level syllabus 2019 Technical Test Analyst
ISTQB Advance level syllabus 2019 Technical Test AnalystISTQB Advance level syllabus 2019 Technical Test Analyst
ISTQB Advance level syllabus 2019 Technical Test Analyst
 
Chapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and AutomationChapter 6 - Test Tools and Automation
Chapter 6 - Test Tools and Automation
 
Chapter 3 - Analytical Techniques
Chapter 3 - Analytical TechniquesChapter 3 - Analytical Techniques
Chapter 3 - Analytical Techniques
 
Chapter 2 - White Box Test Techniques
Chapter 2 - White Box Test TechniquesChapter 2 - White Box Test Techniques
Chapter 2 - White Box Test Techniques
 
Chapter 1 - The Technical Test Analyst Tasks in Risk Based Testing
Chapter 1 - The Technical Test Analyst Tasks in Risk Based TestingChapter 1 - The Technical Test Analyst Tasks in Risk Based Testing
Chapter 1 - The Technical Test Analyst Tasks in Risk Based Testing
 
ISTQB Agile Technical Tester Answers for Sample Question Paper
ISTQB Agile Technical Tester Answers for Sample Question PaperISTQB Agile Technical Tester Answers for Sample Question Paper
ISTQB Agile Technical Tester Answers for Sample Question Paper
 
ISTQB Agile Technical Tester Sample Question Paper
ISTQB Agile Technical Tester Sample Question PaperISTQB Agile Technical Tester Sample Question Paper
ISTQB Agile Technical Tester Sample Question Paper
 

Recently uploaded

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Recently uploaded (20)

The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

ISTQB Specialist Performance Testing Exam Prep

  • 2. Neeraj Kumar Singh Global Testing Consultant ISTQB and HP Certified trainer with 12+ years of experience in Training and delivery. Also a certified Global testing Consultant. Have delivered 500+ training for 10000+ participants in 100+ corporate Organisation across 26 Countries. Instructor | Consultant | Author
  • 3.  About ISTQB  Certifications  Validity Neeraj Kumar Singh INTRODUCTION TO ISTQB
  • 5.  Prerequisite  Exam type – Objective/Multiple Choice  Number of Questions – 40 (40 Marks)  Duration – 90 Min  Schedule  Location/Venue  Passing score – 65% (26 Marks) Neeraj Kumar Singh INTRODUCTION TO ISTQB About Performance Testing Exam
  • 6.  K1 - Remember  K2 - Understand  K3 – Apply  K4 – Analyze Neeraj Kumar Singh K LEVELS Effort for Preparation
  • 7.  Chapter 1 – Basics Concepts  Chapter 2 – Performance Measurement Fundamentals  Chapter 3 – Performance Testing in the Software Lifecycle  Chapter 4 – Performance Testing Tasks  Chapter 5 – Tools Neeraj Kumar Singh PERFORMANCE TESTING SYLLABUS
  • 8. Basic Concepts 1 Basic Concepts 2 Performance Measurements 3 Performance Testing in SDLC Software Testing - ISTQB Specialist Performance Testing Exam Preparation Chapter 1 Neeraj Kumar Singh 4 Performance Testing Tasks 5 Tools
  • 9. Basic Concepts Contents 1.1 Principles and Concepts 1.2 Types of Performance Testing 1.3 Testing Types in Performance Testing 1.4 The Concept of Load Generation 1.5 Common Failures in Performance Testing and Their Causes Neeraj Kumar Singh
  • 10. Basic Concepts Principles of Performance Testing Performance efficiency (or simply “performance”) is an essential part of providing a “good experience” for users when they use their applications on a variety of fixed and mobile platforms. Performance testing plays a critical role in establishing acceptable quality levels for the end user and is often closely integrated with other disciplines such as usability engineering and performance engineering. Additionally, evaluation of functional suitability, usability and other quality characteristics under conditions of load, such as during execution of a performance test, may reveal load-specific issues which impact those characteristics. Performance testing is not limited to the web-based domain where the end user is the focus. It is also relevant to different application domains with a variety of system architectures, such as classic client-server, distributed and embedded. Product Quality Model as a non-functional quality characteristic with the three sub-characteristics described in next slide. Proper focus and prioritization depends on the risks assessed and the needs of the various stakeholders. Test results analysis may identify other areas of risk that need to be addressed. Neeraj Kumar Singh
  • 11. Basic Concepts Principles of Performance Testing Time Behavior: Generally the evaluation of time behavior is the most common performance testing objective. This aspect of performance testing examines the ability of a component or system to respond to user or system inputs within a specified time and under specified conditions. Measurements of time behavior may vary from the “end-to- end” time taken by the system to responding to user input, to the number of CPU cycles required by a software component to execute a particular task. Resource Utilization: If the availability of system resources is identified as a risk, the utilization of those resources (e.g., the allocation of limited RAM) may be investigated by conducting specific performance tests. Capacity: If issues of system behavior at the required capacity limits of the system (e.g., numbers of users or volumes of data) is identified as a risk, performance tests may be conducted to evaluate the suitability of the system architecture. Performance testing often takes the form of experimentation, which enables measurement and analysis of specific system parameters to take place. These may be conducted iteratively in support of system analysis, design and implementation to enable architectural decisions to be made and to help shape stakeholder expectations. All three of the above quality sub-characteristics will impact the ability of the system under test (SUT) to scale. Neeraj Kumar Singh
  • 12. Basic Concepts Principles of Performance Testing The following performance testing principles are particularly relevant.  Tests must be aligned to the defined expectations of different stakeholder groups, in particular users, system designers and operations staff.  The tests must be reproducible. Statistically identical results (within a specified tolerance) must be obtained by repeating the tests on an unchanged system.  The tests must yield results that are both understandable and can be readily compared to stakeholder expectations.  The tests can be conducted, where resources allow, either on complete or partial systems or test environments that are representative of the production system.  The tests must be practically affordable and executable within the timeframe set by the project. Neeraj Kumar Singh
  • 13. Basic Concepts Contents 1.1 Principles and Concepts 1.2 Types of Performance Testing 1.3 Testing Types in Performance Testing 1.4 The Concept of Load Generation 1.5 Common Failures in Performance Testing and Their Causes Neeraj Kumar Singh
  • 14. Basic Concepts Types of Performance Testing Different types of performance testing can be defined. Each of these may be applicable to a given project, depending on the objectives of the test. Performance Testing - Performance testing is an umbrella term including any kind of testing focused on performance (responsiveness) of the system or component under different volumes of load. Load Testing - Load testing focuses on the ability of a system to handle increasing levels of anticipated realistic loads resulting from transaction requests generated by controlled numbers of concurrent users or processes. Stress Testing - Stress testing focuses on the ability of a system or component to handle peak loads that are at or beyond the limits of its anticipated or specified workloads. Stress testing is also used to evaluate a system’s ability to handle reduced availability of resources such as accessible computing capacity, available bandwidth, and memory. Scalability Testing - Scalability testing focuses on the ability of a system to meet future efficiency requirements which may be beyond those currently required. The objective of these tests is to determine the system’s ability to grow (e.g., with more users, larger amounts of data stored) without violating the currently specified performance requirements or failing. Neeraj Kumar Singh
  • 15. Basic Concepts Types of Performance Testing Spike Testing - Spike testing focuses on the ability of a system to respond correctly to sudden bursts of peak loads and return afterwards to a steady state. Endurance Testing - Endurance testing focuses on the stability of the system over a time frame specific to the system’s operational context. This type of testing verifies that there are no resource capacity problems (e.g., memory leaks, database connections, thread pools) that may eventually degrade performance and/or cause failures at breaking points. Concurrency Testing - Concurrency testing focuses on the impact of situations where specific actions occur simultaneously (e.g., when large numbers of users log in at the same time). Concurrency issues are notoriously difficult to find and reproduce, particularly when the problem occurs in an environment where testing has little or no control, such as production. Capacity Testing - Capacity testing determines how many users and/or transactions a given system will support and still meet the stated performance objectives. These objectives may also be stated with regard to the data volumes resulting from the transactions. Neeraj Kumar Singh
  • 16. Basic Concepts Contents 1.1 Principles and Concepts 1.2 Types of Performance Testing 1.3 Testing Types in Performance Testing 1.4 The Concept of Load Generation 1.5 Common Failures in Performance Testing and Their Causes Neeraj Kumar Singh
  • 17. Basic Concepts Testing Types in Performance Testing The principal testing types used in performance testing include static testing and dynamic testing. Static testing Static testing activities are often more important for performance testing than for functional suitability testing. This is because so many critical performance defects are introduced in the architecture and design of the system. These defects can be introduced by misunderstandings or a lack of knowledge by the designers and architects. These defects can also be introduced because the requirements did not adequately capture the response time, throughput, or resource utilization targets, the expected load and usage of the system, or the constraints. Static testing activities for performance can include:  Reviews of requirements with focus on performance aspects and risks  Reviews of database schemas, entity-relationship diagrams, metadata, stored procedures and queries  Reviews of the system and network architecture  Reviews of critical segments of the system code (e.g., complex algorithms) Neeraj Kumar Singh
  • 18. Basic Concepts Testing Types in Performance Testing Dynamic testing As the system is built, dynamic performance testing should start as soon as possible. Opportunities for dynamic performance testing include:  During unit testing, including using profiling information to determine potential bottlenecks and dynamic analysis to evaluate resource utilization  During component integration testing, across key use cases and workflows, especially when integrating different use case features or integrating with the “backbone” structure of a workflow  During system testing of overall end-to-end behaviors under various load conditions  During system integration testing, especially for data flows and workflows across key inter-system interfaces. In system integration testing is not uncommon for the “user” to be another system or machine (e.g. inputs from sensor inputs and other systems )  During acceptance testing, to build user, customer, and operator confidence in the proper performance of the system and to fine tune the system under real world conditions (but generally not to find performance defects in the system) Neeraj Kumar Singh
  • 19. Basic Concepts Contents 1.1 Principles and Concepts 1.2 Types of Performance Testing 1.3 Testing Types in Performance Testing 1.4 The Concept of Load Generation 1.5 Common Failures in Performance Testing and Their Causes Neeraj Kumar Singh
  • 20. Basic Concepts The Concept of Load Generation In order to carry out the various types of performance testing, representative system loads must be modeled, generated and submitted to the system under test. Loads are comparable to the data inputs used for functional test cases, but differ in the following principal ways:  A performance test load must represent many user inputs, not just one  A performance test load may require dedicated hardware and tools for generation  Generation of a performance test load is dependent on the absence of any functional defects in the system under test which may impact test execution The efficient and reliable generation of a specified load is a key success factor when conducting performance tests. There are different options for load generation. Load Generation via the User Interface This may be an adequate approach if only a small number of users are to be represented and if the required numbers of software clients are available from which to enter required inputs. This approach may also be used in conjunction with functional test execution tools, but may rapidly become impractical as the numbers of users to be simulated increases. The stability of the user interface (UI) also represents a critical dependency. Frequent changes can impact the repeatability of performance tests and may significantly affect the maintenance costs. Testing through the UI may be the most representative approach for end-to-end tests. Neeraj Kumar Singh
  • 21. Basic Concepts The Concept of Load Generation Load Generation using Crowds This approach depends on the availability of a large number of testers who will represent real users. In crowd testing, the testers are organized such that the desired load can be generated. This may be a suitable method for testing applications that are reachable from anywhere in the world (e.g., web-based), and may involve the users generating a load from a wide range of different device types and configurations. Load Generation via the Application Programming Interface (API) This approach is similar to using the UI for data entry, but uses the application’s API instead of the UI to simulate user interaction with the system under test. The approach is therefore less sensitive to changes (e.g., delays) in the UI and allows the transactions to be processed in the same way as they would if entered directly by a user via the UI. Dedicated scripts may be created which repeatedly call specific API routines and enable more users to be simulated compared to using UI inputs. Load Generation using Captured Communication Protocols This approach involves capturing user interaction with the system under test at the communications protocol level and then replaying these scripts to simulate potentially very large numbers of users in a repeatable and reliable manner. Neeraj Kumar Singh
  • 22. Basic Concepts Contents 1.1 Principles and Concepts 1.2 Types of Performance Testing 1.3 Testing Types in Performance Testing 1.4 The Concept of Load Generation 1.5 Common Failures in Performance Testing and Their Causes Neeraj Kumar Singh
  • 23. Basic Concepts Common Performance Efficiency Failure Modes and Their Causes While there certainly are many different performance failure modes that can be found during dynamic testing, the following are some examples of common failures (including system crashes), along with typical causes: Slow response under all load levels In some cases, response is unacceptable regardless of load. This may be caused by underlying performance issues, including, but not limited to, bad database design or implementation, network latency, and other background loads. Such issues can be identified during functional and usability testing, not just performance testing, so test analysts should keep an eye open for them and report them. Slow response under moderate-to-heavy load levels In some cases, response degrades unacceptably with moderate-to-heavy load, even when such loads are entirely within normal, expected, allowed ranges. Underlying defects include saturation of one or more resources and varying background loads. Neeraj Kumar Singh
  • 24. Basic Concepts Common Performance Efficiency Failure Modes and Their Causes Degraded response over time In some cases, response degrades gradually or severely over time. Underlying causes include memory leaks, disk fragmentation, increasing network load over time, growth of the file repository, and unexpected database growth. Inadequate or graceless error handling under heavy or over-limit load In some cases, response time is acceptable but error handling degrades at high and beyond-limit load levels. Underlying defects include insufficient resource pools, undersized queues and stacks, and too rapid time-out settings. Neeraj Kumar Singh
  • 25. Basic Concepts Common Performance Efficiency Failure Modes and Their Causes Specific examples of the general types of failures listed above include:  A web-based application that provides information about a company’s services does not respond to user requests within seven seconds (a general industry rule of thumb). The performance efficiency of the system cannot be achieved under specific load conditions.  A system crashes or is unable to respond to user inputs when subjected to a sudden large number of user requests (e.g., ticket sales for a major sporting event). The capacity of the system to handle this number of users is inadequate.  System response is significantly degraded when users submit requests for large amounts of data (e.g., a large and important report is posted on a web site for download). The capacity of the system to handle the generated data volumes is insufficient.  Batch processing is unable to complete before online processing is needed. The execution time of the batch processes is insufficient for the time period allowed.  A real-time system runs out of RAM when parallel processes generate large demands for dynamic memory which cannot be released in time. The RAM is not dimensioned adequately, or requests for RAM are not adequately prioritized.  A real-time system component A which supplies inputs to real-time system component B is unable to calculate updates at the required rate. The overall system fails to respond in time and may fail. Code modules in component A must be evaluated and modified (“performance profiling”) to ensure that the required update rates can be achieved. Neeraj Kumar Singh
  • 26. Basic Concepts 1 Basic Concepts 2 Performance Measurements 3 Performance Testing in SDLC Software Testing - ISTQB Specialist Performance Testing Exam Preparation Chapter 1 Neeraj Kumar Singh 4 Performance Testing Tasks 5 Tools
  • 27. Neeraj Kumar Singh Basic Concepts Sample Questions Pattern Source : istqb.org
  • 28. 1. Which of the following is the best description of spike testing? Select ONE option. Answer Set a. It focuses on the ability of the system to handle loads that are gradually increased to reach the expected maximum b. It focuses on the ability of the system to handle loads that are at or beyond the expected peak load c. It focuses on the ability of the system to meet future efficiency requirements d. It focuses on the ability of the system to respond to quick and extreme changes in load Basic Concepts Sample Question
  • 29. 2. Which of the following performance testing activities should occur during unit testing? Select ONE option. Answer Set a. Testing end-to-end behavior under various load conditions b. Testing data flows and workflows across interfaces c. Testing key use cases and workflows using a top-down approach d. Testing to evaluate resource utilization and potential bottlenecks Basic Concepts Sample Question
  • 30. 3. When is it appropriate to generate load via the application’s APIs? Select ONE option. Answer Set a. When a large number of testers are available who can represent the real users b. When testing must be conducted at the communications protocol level c. When the UI is likely to change but the transactions must be processed as if they were created through the UI d. When only small numbers of test instances are available Basic Concepts Sample Question