SlideShare a Scribd company logo
Prepared By
Asmaa Matar
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
 Testing Principles.
 Fundamental Test Process.
 How much testing is enough?
 Why Testers?
Why is testing necessary ?
 Software Systems Context
 Causes of Software Defects.
 Why we Test?
 Cost of Software Quality
Why is testing necessary ?
 Software system context
 Software can be found in many areas of life.
 When a system go wrong, it can result many effects start
from user inconvenience ,including loss of money, time
or business reputation, and could even cause loss a life.
.
 Health equipment.
 Transportations.
 Banking
 Insurance
 Education
 Scientific Research
Errors
&
Mistakes
- Documents.
- Code
- Software system
Defect or Fault
Failure
Why is testing necessary ?
 Causes of Software Defects
 Humans do mistakes.
 Mistakes may lead to defects in source code or system
specifications.
 Defects are detected only when they leads to failures
(code is executed), not all defects do so.
 Failures are considered problems when they occurred in
live systems.
 An observed failure is an incident.
Defect
Injection
Detection
Prevention
- A defect injected at the
time the causing error is
made.
- A defect is detected at
The time when failure
occurs.
- Finding defects in
requirements docs or static
code can prevent detecting
them in running systems.
Why is testing necessary?
 Why we Test (Testing Goals)
Find defects.
Measure quality.
Provide confidence.
Why is testing necessary?
 Costs of Software defects
 Msnbc published the news of 2010 bug hits millions of
German bank cards.
 Guardin.co.uk said they paid about (€300m).
 Apple Maps gives us directions to nowhere (2012).
Risks
(Poor
Quality)
Humans
(Death, Injury)
Economy
(Money, Time)
Business
(Revenue,
Reputation)
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
What is testing?
 The process consisting of all life cycle activities, both
static and dynamic concerned with planning ,
preparation and evaluation of software products and
related work products to determine that they satisfy
specified requirements , to demonstrate that they are
fit for purpose and to detect defects.
What is Testing?
 Executing SW is only part of testing ,other activities
exist before and after execution.
 Testing activities include: planning and control
,choosing test conditions , designing test cases and
checking results , evaluating exit criteria , reporting
and closure.
Suppose You are given “Pen” with instructions to test it .
What will you do ?
Testing
Static
Reviews
Dynamic
Functional
Non-
Functional
Performance
Security
Usability
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
 Testing Principles
Testing Principles
 Testing Shows Presence of defects.
 Exhaustive testing is impossible.
 Early Testing.
 Defect Clustering.
 Pesticide Paradox .
 Testing is context dependent.
 Absence of errors fallacy.
Testing Principles
 Testing Shows the presence of defects
 Testing can show that defects are present, but cannot
prove that there are no defects.
 Testing reduces the probability of undiscovered defects
remaining in the software.
 Discovering no more defects is not a proof of
correctness.
Testing principles
 Exhaustive testing is impossible
 Testing everything (all combinations of inputs and
preconditions) is not feasible except for trivial cases.
 Instead of exhaustive testing, risk analysis and priorities
should be used to focus testing efforts.
 Example: a simple screen with five input fields and 10
distinct values for each field has 10^5 different
combination.
Testing Principles
 Early Testing
 The earlier defects are detected , the lower the cost of
correction.
 To find defects early, testing activities shall be started as
early as possible in the software or system development
life cycle, and shall be focused on defined objectives.
Testing Principles
 Defect Clustering
 System modules vary in size, complexity and frequency
of change.
 System modules do not experience the same defect
density or failure rate.
 Thus, pareto principle (80-20 rule) is applicable:
A small number of modules contains most of the defects discovered
during prerelease testing , or show the most optional failures
Testing Principles
 Defect Clustering Cont’d
 When a defect is found in one area , changes are there
that more defects can be found and more time can be
invested there.
 Testers should not ignore any area as defects can be
scattered around
Testing Principles
 Pesticide Paradox
 If the same tests are repeated over and over again,
eventually the same set of test cases will no longer find
any new defects.
 To overcome this, test cases need to be regularly
reviewed and revised
 New and different tests need to be written to exercise
different parts of the software or system to find
potentially more defects.
Testing Principles
 Testing is context dependent
 Testing is done differently in different contexts.
 For example, safety-critical software is tested differently
from an e-commerce site.
Testing Principles
 Absence of Error Fallacy
 Finding and fixing defects does not help if the system
built is unusable and does not fulfill the users’ needs
and expectations.
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
 Testing Principles
 Fundamental Test Process
Testing Process...
Planning
and
Control
Analysis
and
design
Implementation
and execution
Evaluating
Exit criteria
And
reporting
Closure
Fundamental Test Process
 Planning and Control
 Ongoing comparison of actual progress against plan.
 Reporting status.
 Takes into account feedback of monitoring and control.
Fundamental Test Process
 Analysis and Design
 Reviewing the test basis.
 Evaluating testability of test basis and test objects.
 Identifying and prioritizing test conditions
 Designing and prioritizing test cases.
 Identifying necessary test data.
 Designing the test environment set-up and identifying
any required infrastructure and tools.
Fundamental Test Process
 Implementation and execution
 Creating test cases , writing test procedures.
 Creating test suits.
 Prepare test execution plans.
Fundamental Test Process
 Evaluating Exit Criteria and Reporting
 Checking test logs against the exit criteria specified in
the planning.
 Assessing if more tests are needed.
 Writing a test summary report for stake holders.
Fundamental Test Process
 Test Closure
 Checking that deliverables have been delivered as
planned.
 Archiving the test environment and the test
infrastructure for later reuse.
 Analyzing lessons learned for future releases and
projects .
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
 Testing Principles
 Fundamental Test Process
 How much testing is enough?
How much testing is enough?
How much testing is enough?
 The amount of testing needed is proportionate with:
 Risk.
 Defect Cost.
 Information needed.
 Project constraints.
 Test infrastructure.
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
 Testing Principles
 Fundamental Test Process
 How much testing is enough
 Why Testers?
1 testing fundamentals
Why Testers?
 Characteristic of a tester
 Curiosity.
 Clear thinking skills.
 Top flight reading speed and comprehension.
 Attention to details.
 Quick learner (outside of testing).
Fundamentals of Testing
 Why is testing necessary?
 What is testing?
 Testing Principles
 Fundamental Test Process
 How much testing is enough
 Why Testers?
1 testing fundamentals
Ad

More Related Content

What's hot (20)

Software testing
Software testingSoftware testing
Software testing
Madhumita Chatterjee
 
SOFTWARE TESTING UNIT-4
SOFTWARE TESTING UNIT-4  SOFTWARE TESTING UNIT-4
SOFTWARE TESTING UNIT-4
Mohammad Faizan
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
Anuraj S.L
 
Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
STLC– software testing life cycle
STLC– software testing life cycleSTLC– software testing life cycle
STLC– software testing life cycle
subash kumar
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2
Yogindernath Gupta
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
Raviteja Chowdary Adusumalli
 
Software testing introduction
Software testing  introductionSoftware testing  introduction
Software testing introduction
GaneshKumarKanthiah
 
stlc
stlcstlc
stlc
noman1413
 
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes
anasz3z3
 
Software testing and process
Software testing and processSoftware testing and process
Software testing and process
gouravkalbalia
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
BugRaptors
 
Software Engineering- Types of Testing
Software Engineering- Types of TestingSoftware Engineering- Types of Testing
Software Engineering- Types of Testing
Trinity Dwarka
 
software testing
 software testing software testing
software testing
Sara shall
 
Importance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectImportance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your Project
Sarah Elson
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
Confiz
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
ArunKumar5524
 
Manual testing
Manual testingManual testing
Manual testing
Vivek V
 
Software testing
Software testingSoftware testing
Software testing
Omar Al-Bokari
 
STLC
STLCSTLC
STLC
Karuna Thakur
 
SOFTWARE TESTING UNIT-4
SOFTWARE TESTING UNIT-4  SOFTWARE TESTING UNIT-4
SOFTWARE TESTING UNIT-4
Mohammad Faizan
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
Anuraj S.L
 
Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
STLC– software testing life cycle
STLC– software testing life cycleSTLC– software testing life cycle
STLC– software testing life cycle
subash kumar
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2
Yogindernath Gupta
 
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes
anasz3z3
 
Software testing and process
Software testing and processSoftware testing and process
Software testing and process
gouravkalbalia
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
BugRaptors
 
Software Engineering- Types of Testing
Software Engineering- Types of TestingSoftware Engineering- Types of Testing
Software Engineering- Types of Testing
Trinity Dwarka
 
software testing
 software testing software testing
software testing
Sara shall
 
Importance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your ProjectImportance of a Test Management Tool for Your Project
Importance of a Test Management Tool for Your Project
Sarah Elson
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
Confiz
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
ArunKumar5524
 
Manual testing
Manual testingManual testing
Manual testing
Vivek V
 

Similar to 1 testing fundamentals (20)

Bab 1 Fundamentals Of Testing
Bab 1 Fundamentals Of TestingBab 1 Fundamentals Of Testing
Bab 1 Fundamentals Of Testing
lolayoriva
 
Chap1 Istqb presentation Foundation level in QA
Chap1 Istqb presentation Foundation level in QAChap1 Istqb presentation Foundation level in QA
Chap1 Istqb presentation Foundation level in QA
sree23411
 
Chapter 1 - Fundamentals of Testing V4.0
Chapter 1 - Fundamentals of Testing V4.0Chapter 1 - Fundamentals of Testing V4.0
Chapter 1 - Fundamentals of Testing V4.0
Neeraj Kumar Singh
 
Testing
TestingTesting
Testing
kalasalingam university
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
Webtech Learning
 
Istqb v.1.2
Istqb v.1.2Istqb v.1.2
Istqb v.1.2
AnnaGodorogea
 
Fundamentals of testing 2
Fundamentals of testing 2Fundamentals of testing 2
Fundamentals of testing 2
seli purnianda
 
Fundamentals of Testing Section 1/6
Fundamentals of Testing   Section 1/6Fundamentals of Testing   Section 1/6
Fundamentals of Testing Section 1/6
International Personal Finance Plc
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
Muhammad Khairil
 
ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1
Yogindernath Gupta
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testing
Tricia Karina
 
ISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture NotesISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture Notes
onsoftwaretest
 
Software Testing
Software TestingSoftware Testing
Software Testing
Sophia Girls' College(Autonomous), Ajmer
 
Fundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptxFundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptx
MusaBashir9
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
Yusran5
 
Fundamental Of Testing
Fundamental Of TestingFundamental Of Testing
Fundamental Of Testing
suci maisaroh
 
ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5
Yogindernath Gupta
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Ankit Prajapati
 
Software Testing - SDLC Model
Software Testing - SDLC ModelSoftware Testing - SDLC Model
Software Testing - SDLC Model
Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU
 
softwaretestingppt-120810095500-phpapp02 (1).pdf
softwaretestingppt-120810095500-phpapp02 (1).pdfsoftwaretestingppt-120810095500-phpapp02 (1).pdf
softwaretestingppt-120810095500-phpapp02 (1).pdf
BabaShaikh3
 
Bab 1 Fundamentals Of Testing
Bab 1 Fundamentals Of TestingBab 1 Fundamentals Of Testing
Bab 1 Fundamentals Of Testing
lolayoriva
 
Chap1 Istqb presentation Foundation level in QA
Chap1 Istqb presentation Foundation level in QAChap1 Istqb presentation Foundation level in QA
Chap1 Istqb presentation Foundation level in QA
sree23411
 
Chapter 1 - Fundamentals of Testing V4.0
Chapter 1 - Fundamentals of Testing V4.0Chapter 1 - Fundamentals of Testing V4.0
Chapter 1 - Fundamentals of Testing V4.0
Neeraj Kumar Singh
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
Webtech Learning
 
Fundamentals of testing 2
Fundamentals of testing 2Fundamentals of testing 2
Fundamentals of testing 2
seli purnianda
 
ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1
Yogindernath Gupta
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testing
Tricia Karina
 
ISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture NotesISTQB, ISEB Lecture Notes
ISTQB, ISEB Lecture Notes
onsoftwaretest
 
Fundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptxFundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptx
MusaBashir9
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
Yusran5
 
Fundamental Of Testing
Fundamental Of TestingFundamental Of Testing
Fundamental Of Testing
suci maisaroh
 
ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5ISTQB / ISEB Foundation Exam Practice - 5
ISTQB / ISEB Foundation Exam Practice - 5
Yogindernath Gupta
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Ankit Prajapati
 
softwaretestingppt-120810095500-phpapp02 (1).pdf
softwaretestingppt-120810095500-phpapp02 (1).pdfsoftwaretestingppt-120810095500-phpapp02 (1).pdf
softwaretestingppt-120810095500-phpapp02 (1).pdf
BabaShaikh3
 
Ad

Recently uploaded (20)

Cryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptxCryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptx
riyageorge2024
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Creating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdfCreating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdf
Applitools
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Innovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at allInnovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at all
ayeshakanwal75
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
Cryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptxCryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptx
riyageorge2024
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Creating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdfCreating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdf
Applitools
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Innovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at allInnovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at all
ayeshakanwal75
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
Ad

1 testing fundamentals

  • 2. Fundamentals of Testing  Why is testing necessary?  What is testing?  Testing Principles.  Fundamental Test Process.  How much testing is enough?  Why Testers?
  • 3. Why is testing necessary ?  Software Systems Context  Causes of Software Defects.  Why we Test?  Cost of Software Quality
  • 4. Why is testing necessary ?  Software system context  Software can be found in many areas of life.  When a system go wrong, it can result many effects start from user inconvenience ,including loss of money, time or business reputation, and could even cause loss a life.
  • 5. .  Health equipment.  Transportations.  Banking  Insurance  Education  Scientific Research
  • 6. Errors & Mistakes - Documents. - Code - Software system Defect or Fault Failure
  • 7. Why is testing necessary ?  Causes of Software Defects  Humans do mistakes.  Mistakes may lead to defects in source code or system specifications.  Defects are detected only when they leads to failures (code is executed), not all defects do so.  Failures are considered problems when they occurred in live systems.  An observed failure is an incident.
  • 8. Defect Injection Detection Prevention - A defect injected at the time the causing error is made. - A defect is detected at The time when failure occurs. - Finding defects in requirements docs or static code can prevent detecting them in running systems.
  • 9. Why is testing necessary?  Why we Test (Testing Goals) Find defects. Measure quality. Provide confidence.
  • 10. Why is testing necessary?  Costs of Software defects  Msnbc published the news of 2010 bug hits millions of German bank cards.  Guardin.co.uk said they paid about (€300m).  Apple Maps gives us directions to nowhere (2012).
  • 12. Fundamentals of Testing  Why is testing necessary?  What is testing?
  • 13. What is testing?  The process consisting of all life cycle activities, both static and dynamic concerned with planning , preparation and evaluation of software products and related work products to determine that they satisfy specified requirements , to demonstrate that they are fit for purpose and to detect defects.
  • 14. What is Testing?  Executing SW is only part of testing ,other activities exist before and after execution.  Testing activities include: planning and control ,choosing test conditions , designing test cases and checking results , evaluating exit criteria , reporting and closure.
  • 15. Suppose You are given “Pen” with instructions to test it . What will you do ?
  • 17. Fundamentals of Testing  Why is testing necessary?  What is testing?  Testing Principles
  • 18. Testing Principles  Testing Shows Presence of defects.  Exhaustive testing is impossible.  Early Testing.  Defect Clustering.  Pesticide Paradox .  Testing is context dependent.  Absence of errors fallacy.
  • 19. Testing Principles  Testing Shows the presence of defects  Testing can show that defects are present, but cannot prove that there are no defects.  Testing reduces the probability of undiscovered defects remaining in the software.  Discovering no more defects is not a proof of correctness.
  • 20. Testing principles  Exhaustive testing is impossible  Testing everything (all combinations of inputs and preconditions) is not feasible except for trivial cases.  Instead of exhaustive testing, risk analysis and priorities should be used to focus testing efforts.  Example: a simple screen with five input fields and 10 distinct values for each field has 10^5 different combination.
  • 21. Testing Principles  Early Testing  The earlier defects are detected , the lower the cost of correction.  To find defects early, testing activities shall be started as early as possible in the software or system development life cycle, and shall be focused on defined objectives.
  • 22. Testing Principles  Defect Clustering  System modules vary in size, complexity and frequency of change.  System modules do not experience the same defect density or failure rate.  Thus, pareto principle (80-20 rule) is applicable: A small number of modules contains most of the defects discovered during prerelease testing , or show the most optional failures
  • 23. Testing Principles  Defect Clustering Cont’d  When a defect is found in one area , changes are there that more defects can be found and more time can be invested there.  Testers should not ignore any area as defects can be scattered around
  • 24. Testing Principles  Pesticide Paradox  If the same tests are repeated over and over again, eventually the same set of test cases will no longer find any new defects.  To overcome this, test cases need to be regularly reviewed and revised  New and different tests need to be written to exercise different parts of the software or system to find potentially more defects.
  • 25. Testing Principles  Testing is context dependent  Testing is done differently in different contexts.  For example, safety-critical software is tested differently from an e-commerce site.
  • 26. Testing Principles  Absence of Error Fallacy  Finding and fixing defects does not help if the system built is unusable and does not fulfill the users’ needs and expectations.
  • 27. Fundamentals of Testing  Why is testing necessary?  What is testing?  Testing Principles  Fundamental Test Process
  • 30. Fundamental Test Process  Planning and Control  Ongoing comparison of actual progress against plan.  Reporting status.  Takes into account feedback of monitoring and control.
  • 31. Fundamental Test Process  Analysis and Design  Reviewing the test basis.  Evaluating testability of test basis and test objects.  Identifying and prioritizing test conditions  Designing and prioritizing test cases.  Identifying necessary test data.  Designing the test environment set-up and identifying any required infrastructure and tools.
  • 32. Fundamental Test Process  Implementation and execution  Creating test cases , writing test procedures.  Creating test suits.  Prepare test execution plans.
  • 33. Fundamental Test Process  Evaluating Exit Criteria and Reporting  Checking test logs against the exit criteria specified in the planning.  Assessing if more tests are needed.  Writing a test summary report for stake holders.
  • 34. Fundamental Test Process  Test Closure  Checking that deliverables have been delivered as planned.  Archiving the test environment and the test infrastructure for later reuse.  Analyzing lessons learned for future releases and projects .
  • 35. Fundamentals of Testing  Why is testing necessary?  What is testing?  Testing Principles  Fundamental Test Process  How much testing is enough?
  • 36. How much testing is enough?
  • 37. How much testing is enough?  The amount of testing needed is proportionate with:  Risk.  Defect Cost.  Information needed.  Project constraints.  Test infrastructure.
  • 38. Fundamentals of Testing  Why is testing necessary?  What is testing?  Testing Principles  Fundamental Test Process  How much testing is enough  Why Testers?
  • 40. Why Testers?  Characteristic of a tester  Curiosity.  Clear thinking skills.  Top flight reading speed and comprehension.  Attention to details.  Quick learner (outside of testing).
  • 41. Fundamentals of Testing  Why is testing necessary?  What is testing?  Testing Principles  Fundamental Test Process  How much testing is enough  Why Testers?