SlideShare a Scribd company logo
What Is Testing ?
Syllabus learning objectives for 1.2 What is testing?
1. Recall the common objectives of testing. (Kl)
2. Describe the purpose of testing in software development, maintenance and
operations as a means to find defects, provide confidence and infor mation,
and prevent defects. (K2)
In this section, we will review the common objectives of testing. We'll explain
how testing helps us to find defects, provide confidence and information, and
prevent defects. We will also introduce additional fundamental principles of
testing. As you read this section, you'll encounter the terms code, debugging,
development of software, requirement, review, test basis, test case, testing
and test objective.
Let's use an analogy to help us: driving tests. In a driving test, the examiner
critically assesses the candidate's driving, noting every mistake, large or small,
made by the driver under test. The examiner takes the driver through a route
which tests many possible driving activities, such as road junctions of different
types, control and maneuvering of the car, ability to stop safely in an
emergency, and awareness of the road, other road users and hazards. Some of
the activities must be tested. For example, in the UK, an emergency stop test is
always carried out, with the examiner simulating the moment of emergency by
hitting the dashboard at which point the driver must stop the car quickly,
safely and without loss of control.
The Driving Test - an Analogy
For Software Testing
At the end of the test, the examiner makes a judgment about the driver's
performance. Has the driver passed the test or failed? The examiner bases the
judgment on the number and severity of the failures identified, and also
whether the driver has been able to meet the driving requirements. A single
severe fault is enough to fail the whole test, but a small number of minor
faults might still mean the test is passed. Many minor faults would reduce the
confidence of the examiner in the quality —of the driving to the point where
the driver cannot pass.
The Driving Test - an Analogy
For Software Testing
Defining Software Testing
Let's break the definition down into parts; the definition has some key phrases
to remember. The definition starts with a description of testing as a process and
then lists some objectives of the test process. This is a suitable definition of testing
for any level of testing, from compo-nent testing through to acceptance testing,
provided that we remember to take the varying objectives of these different levels
of testing into account.
We can see that the software test is very like a driving test in many ways,
although of course it is not a perfect analogy! The driving examiner becomes the
software tester. The driver being examined becomes the system or software under
test, and you'll see as we go through this book that the same approach broadly
holds.
So, test activities exist before and after test execution. As a tester or test
manager, you will be involved in planning and control of the testing, choosing test
conditions, designing test cases based on those test conditions, executing them
and checking results, evaluating whether enough testing has been done by
Examining completion (or exit) criteria, reporting on the testing process and
system under test, and presenting test completion (or summary) reports.
Software Test and Driving Test Compared
We can use both dynamic testing and static testing as a means for
achieving similar test objectives. Both provide information to improve both
the system to be tested, and the development and testing processes. We
mentioned above that testing can have different goals and objectives, which
often include:
 Finding defects;
 Gaining confidence in and providing information about the level of quality;
 preventing defects.
When Can We Meet Our Test Objectives ?
Reviewing defects and failures in order to improve processes allows us to
improve our testing and our requirements, design and development
processes. One phenomenon that many testers have observed is that defects
tend to cluster. This can happen because an area of the code is particularly
complex and tricky, or because changing software and other products tends to
cause knock-on defects. Testers will often use this information when making
their risk assessment for planning the tests, and will focus on known 'hot
spots'.
Focusing On Defects Can Help
Us Plan Our Tests
A main focus of reviews and other static tests is to carry out testing as early
as possible, finding and fixing defects more cheaply and preventing defects
from appearing at later stages of this project. These activities help us find out
about defects earlier and identify potential clusters. Additionally, an important
outcome of all testing is information that assists in risk assess-ment; these
reviews will contribute to the planning for the tests executed later in the
software development life cycle. We might also carry out root cause analysis to
prevent defects and failures happening again and perhaps to identify the
cause of clusters and potential future clusters.
Focusing On Defects Can Help
Us Plan Our Tests
Over time, as we improve our whole software development life cycle and
the early static testing, we may well find that dynamic test levels find fewer
defects. A typical test improvement initiative will initially find more defects as
the testing improves and then, as the defect prevention kicks in, we see the
defect numbers dropping. The first part of the improvement enables us to
reduce failures in operation; later the improve-ments are making us more
efficient and effective in producing the software with fewer defects in it.
The Defect Clusters Change Over Time
As the 'hot spots' for bugs get cleaned up we need to move our focus else-
where, to the next set of risks. Over time, our focus may change from finding
coding bugs, to looking at the requirements and design documents for
defects, and to looking for process improvements so that we prevent defects
in the product.
The Defect Clusters Change Over Time
When a test finds a defect that must be fixed, a programmer must do some
work to locate the defect in the code and make the fix. In this process, called
debug-ging, a programmer will examine the code for the immediate cause of the
problem, repair the code and check that the code now executes as expected. The
fix is often then tested separately (e.g. by an independent tester) to confirm the
fix. Notice that testing and debugging are different activities. Developers may test
their own fixes, in which case the very tight cycle of identifying faults, debugging,
and retesting is often loosely referred to as debugging. However, often following
the debugging cycle the fixed code is tested independently both to retest the fix
itself and to apply regression testing to the surrounding unchanged software.
Debugging Removes Defects
This principle arises from the theory of the process of scientific
experimenta-tion and has been adopted by testers; you'll see the idea in many
testing books. While you are not expected to read the scientific theory
[Popper] the analogy used in science is useful; however many white swans we
see, we cannot say 'All swans are white'. However, as soon as we see one black
swan we can say 'Not all swans are white'. In the same way, however many
tests we execute without finding a bug, we have not shown 'There are no
bugs'. As soon as we find a bug, we have shown 'This code is not bug-free'.
Is The Software Defect Free ?
There is another important principle we must consider; the customers for
soft-ware - the people and organizations who buy and use it to aid in their
day-to-day tasks - are not interested in defects or numbers of defects, except
when they are directly affected by the instability of the software. The people
using soft-ware are more interested in the software supporting them in
completing tasks efficiently and effectively. The software must meet their
needs. It is for this reason that the requirements and design defects we
discussed earlier are so important, and why reviews and inspections are such a
funda-mental part of the entire test activity.
If We Don’t Find Defects Does That Mean
The Users Will Accept The Software
“THANK YOU”

More Related Content

What's hot

Qa interview questions and answers for placements
Qa interview questions and answers for placementsQa interview questions and answers for placements
Qa interview questions and answers for placements
Garuda Trainings
 
Fundamentals of testing (what is testing)
Fundamentals of testing (what is testing)Fundamentals of testing (what is testing)
Fundamentals of testing (what is testing)
Dhy Ardiansyah
 
Software Testing Principles and  Techniques
Software Testing Principles and  Techniques Software Testing Principles and  Techniques
Software Testing Principles and  Techniques
suresh ramanujam
 
Myths and reality about software testing
Myths and reality about software testingMyths and reality about software testing
Myths and reality about software testing
Alisha Henderson
 
Basics of Software Testing
Basics of Software TestingBasics of Software Testing
Basics of Software TestingShakal Shukla
 
Unit 1 basic concepts of testing & quality
Unit 1   basic concepts of testing & qualityUnit 1   basic concepts of testing & quality
Unit 1 basic concepts of testing & quality
ravikhimani1984
 
Automation testing interview pdf org
Automation testing interview pdf orgAutomation testing interview pdf org
Automation testing interview pdf org
Testbytes
 
Negative Testing
Negative TestingNegative Testing
Negative Testing
Mindfire Solutions
 
Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...
Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...
Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...
TechTalks
 
Qa mockup interview for automation testing
Qa mockup interview for automation testingQa mockup interview for automation testing
Qa mockup interview for automation testing
KadharBashaJ
 
Testing a GPS application | Testbytes
Testing a GPS application | TestbytesTesting a GPS application | Testbytes
Testing a GPS application | Testbytes
Testbytes
 
Best Practices In Exploratory Testing
Best Practices In Exploratory TestingBest Practices In Exploratory Testing
Best Practices In Exploratory Testing
99tests
 
Principles of Software testing
Principles of Software testingPrinciples of Software testing
Principles of Software testing
Md Mamunur Rashid
 
Effective Testing fo Startups
Effective Testing fo StartupsEffective Testing fo Startups
Effective Testing fo Startups
Testnetic
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts pptRathna Priya
 
Phases of software development
Phases of software developmentPhases of software development
Phases of software development
Celine George
 
Software Testing As a Career Path
Software Testing As a Career PathSoftware Testing As a Career Path
Software Testing As a Career Path
Rock Interview
 
Testing softvamp techno solutions technical interview questions 2 years expe...
Testing  softvamp techno solutions technical interview questions 2 years expe...Testing  softvamp techno solutions technical interview questions 2 years expe...
Testing softvamp techno solutions technical interview questions 2 years expe...
SoftvampTechnoSoluti
 
Software Testing without Requirements: Survival Guide
Software Testing without Requirements: Survival GuideSoftware Testing without Requirements: Survival Guide
Software Testing without Requirements: Survival Guide
Oleksandr Lutsaievskyi
 
Basics in software testing
Basics in software testingBasics in software testing
Basics in software testing
TOPS Technologies
 

What's hot (20)

Qa interview questions and answers for placements
Qa interview questions and answers for placementsQa interview questions and answers for placements
Qa interview questions and answers for placements
 
Fundamentals of testing (what is testing)
Fundamentals of testing (what is testing)Fundamentals of testing (what is testing)
Fundamentals of testing (what is testing)
 
Software Testing Principles and  Techniques
Software Testing Principles and  Techniques Software Testing Principles and  Techniques
Software Testing Principles and  Techniques
 
Myths and reality about software testing
Myths and reality about software testingMyths and reality about software testing
Myths and reality about software testing
 
Basics of Software Testing
Basics of Software TestingBasics of Software Testing
Basics of Software Testing
 
Unit 1 basic concepts of testing & quality
Unit 1   basic concepts of testing & qualityUnit 1   basic concepts of testing & quality
Unit 1 basic concepts of testing & quality
 
Automation testing interview pdf org
Automation testing interview pdf orgAutomation testing interview pdf org
Automation testing interview pdf org
 
Negative Testing
Negative TestingNegative Testing
Negative Testing
 
Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...
Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...
Tech talks annual 2015 izzet mustafayev_performance testing - the way to make...
 
Qa mockup interview for automation testing
Qa mockup interview for automation testingQa mockup interview for automation testing
Qa mockup interview for automation testing
 
Testing a GPS application | Testbytes
Testing a GPS application | TestbytesTesting a GPS application | Testbytes
Testing a GPS application | Testbytes
 
Best Practices In Exploratory Testing
Best Practices In Exploratory TestingBest Practices In Exploratory Testing
Best Practices In Exploratory Testing
 
Principles of Software testing
Principles of Software testingPrinciples of Software testing
Principles of Software testing
 
Effective Testing fo Startups
Effective Testing fo StartupsEffective Testing fo Startups
Effective Testing fo Startups
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts ppt
 
Phases of software development
Phases of software developmentPhases of software development
Phases of software development
 
Software Testing As a Career Path
Software Testing As a Career PathSoftware Testing As a Career Path
Software Testing As a Career Path
 
Testing softvamp techno solutions technical interview questions 2 years expe...
Testing  softvamp techno solutions technical interview questions 2 years expe...Testing  softvamp techno solutions technical interview questions 2 years expe...
Testing softvamp techno solutions technical interview questions 2 years expe...
 
Software Testing without Requirements: Survival Guide
Software Testing without Requirements: Survival GuideSoftware Testing without Requirements: Survival Guide
Software Testing without Requirements: Survival Guide
 
Basics in software testing
Basics in software testingBasics in software testing
Basics in software testing
 

Similar to Fundamentals of testing what is testing (reference graham et.al (2006))

What is testing
What is testingWhat is testing
What is testing
Bayu Andika Pratama
 
Software_testing Unit 1 bca V.pdf
Software_testing Unit 1 bca V.pdfSoftware_testing Unit 1 bca V.pdf
Software_testing Unit 1 bca V.pdf
AnupmaMunshi
 
What is testing?
What is testing?What is testing?
What is testing?
Zuliar Efendi
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
Journal For Research
 
Manual Testing guide by nagula sai kiran.docx
Manual Testing guide by nagula sai kiran.docxManual Testing guide by nagula sai kiran.docx
Manual Testing guide by nagula sai kiran.docx
sai kiran
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testing
Tricia Karina
 
Fundamentals of testing (1)
Fundamentals of testing (1)Fundamentals of testing (1)
Fundamentals of testing (1)Aziz Chikhly
 
2.fundamental of testing
2.fundamental of testing2.fundamental of testing
2.fundamental of testing
Bobi Henfajri Setiawan
 
Software Testing Interview Questions For Experienced
Software Testing Interview Questions For ExperiencedSoftware Testing Interview Questions For Experienced
Software Testing Interview Questions For Experienced
zynofustechnology
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
Muhammad Khairil
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
acemindia
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
muhamad iqbal
 
Fundamentals of Testing - Andika Dwi Ary Candra
Fundamentals of Testing - Andika Dwi Ary CandraFundamentals of Testing - Andika Dwi Ary Candra
Fundamentals of Testing - Andika Dwi Ary Candra
And11ka
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
Suci Ayu Mawarni
 
int.ppt
int.pptint.ppt
int.ppt
baranicsea
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
Webtech Learning
 
Software testing q as collection by ravi
Software testing q as   collection by raviSoftware testing q as   collection by ravi
Software testing q as collection by raviRavindranath Tagore
 
ISTQBCH1 Manual Testing.pptx
ISTQBCH1 Manual Testing.pptxISTQBCH1 Manual Testing.pptx
ISTQBCH1 Manual Testing.pptx
rajkamalv
 
Chapter 1 Fundamentals of Testing
Chapter 1 Fundamentals of TestingChapter 1 Fundamentals of Testing
Chapter 1 Fundamentals of Testing
Zetryan Satria
 
Fundamental Of Testing
Fundamental Of TestingFundamental Of Testing
Fundamental Of Testing
suci maisaroh
 

Similar to Fundamentals of testing what is testing (reference graham et.al (2006)) (20)

What is testing
What is testingWhat is testing
What is testing
 
Software_testing Unit 1 bca V.pdf
Software_testing Unit 1 bca V.pdfSoftware_testing Unit 1 bca V.pdf
Software_testing Unit 1 bca V.pdf
 
What is testing?
What is testing?What is testing?
What is testing?
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
 
Manual Testing guide by nagula sai kiran.docx
Manual Testing guide by nagula sai kiran.docxManual Testing guide by nagula sai kiran.docx
Manual Testing guide by nagula sai kiran.docx
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testing
 
Fundamentals of testing (1)
Fundamentals of testing (1)Fundamentals of testing (1)
Fundamentals of testing (1)
 
2.fundamental of testing
2.fundamental of testing2.fundamental of testing
2.fundamental of testing
 
Software Testing Interview Questions For Experienced
Software Testing Interview Questions For ExperiencedSoftware Testing Interview Questions For Experienced
Software Testing Interview Questions For Experienced
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
Fundamentals of Testing - Andika Dwi Ary Candra
Fundamentals of Testing - Andika Dwi Ary CandraFundamentals of Testing - Andika Dwi Ary Candra
Fundamentals of Testing - Andika Dwi Ary Candra
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
int.ppt
int.pptint.ppt
int.ppt
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Software testing q as collection by ravi
Software testing q as   collection by raviSoftware testing q as   collection by ravi
Software testing q as collection by ravi
 
ISTQBCH1 Manual Testing.pptx
ISTQBCH1 Manual Testing.pptxISTQBCH1 Manual Testing.pptx
ISTQBCH1 Manual Testing.pptx
 
Chapter 1 Fundamentals of Testing
Chapter 1 Fundamentals of TestingChapter 1 Fundamentals of Testing
Chapter 1 Fundamentals of Testing
 
Fundamental Of Testing
Fundamental Of TestingFundamental Of Testing
Fundamental Of Testing
 

Recently uploaded

0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
OWASP Beja
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
Access Innovations, Inc.
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Sebastiano Panichella
 
María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024
eCommerce Institute
 
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdfSupercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Access Innovations, Inc.
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
Vladimir Samoylov
 
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Orkestra
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
Faculty of Medicine And Health Sciences
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Sebastiano Panichella
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
Sebastiano Panichella
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
Howard Spence
 
Media as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern EraMedia as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern Era
faizulhassanfaiz1670
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Matjaž Lipuš
 
Gregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptxGregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptx
gharris9
 
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
khadija278284
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
IP ServerOne
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
OECD Directorate for Financial and Enterprise Affairs
 

Recently uploaded (17)

0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
 
María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024María Carolina Martínez - eCommerce Day Colombia 2024
María Carolina Martínez - eCommerce Day Colombia 2024
 
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdfSupercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
Supercharge your AI - SSP Industry Breakout Session 2024-v2_1.pdf
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
 
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
 
Media as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern EraMedia as a Mind Controlling Strategy In Old and Modern Era
Media as a Mind Controlling Strategy In Old and Modern Era
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
 
Gregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptxGregory Harris' Civics Presentation.pptx
Gregory Harris' Civics Presentation.pptx
 
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
 

Fundamentals of testing what is testing (reference graham et.al (2006))

  • 1.
  • 2. What Is Testing ? Syllabus learning objectives for 1.2 What is testing? 1. Recall the common objectives of testing. (Kl) 2. Describe the purpose of testing in software development, maintenance and operations as a means to find defects, provide confidence and infor mation, and prevent defects. (K2) In this section, we will review the common objectives of testing. We'll explain how testing helps us to find defects, provide confidence and information, and prevent defects. We will also introduce additional fundamental principles of testing. As you read this section, you'll encounter the terms code, debugging, development of software, requirement, review, test basis, test case, testing and test objective.
  • 3. Let's use an analogy to help us: driving tests. In a driving test, the examiner critically assesses the candidate's driving, noting every mistake, large or small, made by the driver under test. The examiner takes the driver through a route which tests many possible driving activities, such as road junctions of different types, control and maneuvering of the car, ability to stop safely in an emergency, and awareness of the road, other road users and hazards. Some of the activities must be tested. For example, in the UK, an emergency stop test is always carried out, with the examiner simulating the moment of emergency by hitting the dashboard at which point the driver must stop the car quickly, safely and without loss of control. The Driving Test - an Analogy For Software Testing
  • 4. At the end of the test, the examiner makes a judgment about the driver's performance. Has the driver passed the test or failed? The examiner bases the judgment on the number and severity of the failures identified, and also whether the driver has been able to meet the driving requirements. A single severe fault is enough to fail the whole test, but a small number of minor faults might still mean the test is passed. Many minor faults would reduce the confidence of the examiner in the quality —of the driving to the point where the driver cannot pass. The Driving Test - an Analogy For Software Testing
  • 5. Defining Software Testing Let's break the definition down into parts; the definition has some key phrases to remember. The definition starts with a description of testing as a process and then lists some objectives of the test process. This is a suitable definition of testing for any level of testing, from compo-nent testing through to acceptance testing, provided that we remember to take the varying objectives of these different levels of testing into account.
  • 6. We can see that the software test is very like a driving test in many ways, although of course it is not a perfect analogy! The driving examiner becomes the software tester. The driver being examined becomes the system or software under test, and you'll see as we go through this book that the same approach broadly holds. So, test activities exist before and after test execution. As a tester or test manager, you will be involved in planning and control of the testing, choosing test conditions, designing test cases based on those test conditions, executing them and checking results, evaluating whether enough testing has been done by Examining completion (or exit) criteria, reporting on the testing process and system under test, and presenting test completion (or summary) reports. Software Test and Driving Test Compared
  • 7. We can use both dynamic testing and static testing as a means for achieving similar test objectives. Both provide information to improve both the system to be tested, and the development and testing processes. We mentioned above that testing can have different goals and objectives, which often include:  Finding defects;  Gaining confidence in and providing information about the level of quality;  preventing defects. When Can We Meet Our Test Objectives ?
  • 8. Reviewing defects and failures in order to improve processes allows us to improve our testing and our requirements, design and development processes. One phenomenon that many testers have observed is that defects tend to cluster. This can happen because an area of the code is particularly complex and tricky, or because changing software and other products tends to cause knock-on defects. Testers will often use this information when making their risk assessment for planning the tests, and will focus on known 'hot spots'. Focusing On Defects Can Help Us Plan Our Tests
  • 9. A main focus of reviews and other static tests is to carry out testing as early as possible, finding and fixing defects more cheaply and preventing defects from appearing at later stages of this project. These activities help us find out about defects earlier and identify potential clusters. Additionally, an important outcome of all testing is information that assists in risk assess-ment; these reviews will contribute to the planning for the tests executed later in the software development life cycle. We might also carry out root cause analysis to prevent defects and failures happening again and perhaps to identify the cause of clusters and potential future clusters. Focusing On Defects Can Help Us Plan Our Tests
  • 10. Over time, as we improve our whole software development life cycle and the early static testing, we may well find that dynamic test levels find fewer defects. A typical test improvement initiative will initially find more defects as the testing improves and then, as the defect prevention kicks in, we see the defect numbers dropping. The first part of the improvement enables us to reduce failures in operation; later the improve-ments are making us more efficient and effective in producing the software with fewer defects in it. The Defect Clusters Change Over Time
  • 11. As the 'hot spots' for bugs get cleaned up we need to move our focus else- where, to the next set of risks. Over time, our focus may change from finding coding bugs, to looking at the requirements and design documents for defects, and to looking for process improvements so that we prevent defects in the product. The Defect Clusters Change Over Time
  • 12. When a test finds a defect that must be fixed, a programmer must do some work to locate the defect in the code and make the fix. In this process, called debug-ging, a programmer will examine the code for the immediate cause of the problem, repair the code and check that the code now executes as expected. The fix is often then tested separately (e.g. by an independent tester) to confirm the fix. Notice that testing and debugging are different activities. Developers may test their own fixes, in which case the very tight cycle of identifying faults, debugging, and retesting is often loosely referred to as debugging. However, often following the debugging cycle the fixed code is tested independently both to retest the fix itself and to apply regression testing to the surrounding unchanged software. Debugging Removes Defects
  • 13. This principle arises from the theory of the process of scientific experimenta-tion and has been adopted by testers; you'll see the idea in many testing books. While you are not expected to read the scientific theory [Popper] the analogy used in science is useful; however many white swans we see, we cannot say 'All swans are white'. However, as soon as we see one black swan we can say 'Not all swans are white'. In the same way, however many tests we execute without finding a bug, we have not shown 'There are no bugs'. As soon as we find a bug, we have shown 'This code is not bug-free'. Is The Software Defect Free ?
  • 14. There is another important principle we must consider; the customers for soft-ware - the people and organizations who buy and use it to aid in their day-to-day tasks - are not interested in defects or numbers of defects, except when they are directly affected by the instability of the software. The people using soft-ware are more interested in the software supporting them in completing tasks efficiently and effectively. The software must meet their needs. It is for this reason that the requirements and design defects we discussed earlier are so important, and why reviews and inspections are such a funda-mental part of the entire test activity. If We Don’t Find Defects Does That Mean The Users Will Accept The Software