SlideShare a Scribd company logo
ANDRI HAIRIYADI
11453105957
THE FUNDAMENTALS OF TESTING:
why testing is needed ?
its limitations, objectives and purpose;
the principles behind testing
the process that testers follow;
some of the psychological factors that testers must consider in their work.
why testing is needed ?
Software systems context
• Testing Principle - Testing is context dependent Testing
is done differently in different contexts. For example,
safety-critical software is tested differently from an e-
commerce site
why testing is needed ?
Causes of software defects
Do our mistakes matter?
• Let's think about the consequences of mistakes. We agree that any human being, programmers and testers included, can make an error. These
errors may produce defects in the software code or system, or in a document. If a defect in code is executed, the system may experience a failure. So
the mistakes we make matter partly because they have consequences for the products for which we are responsible.
When do defects arise?
• In Figure 1.1 we can see how defects may arise in four requirements for a product. We can see that requirement 1 is implemented correctly - we
understood the customer's requirement, designed correctly to meet that requirement, built correctly to meet the design, and so deliver that
requirement with the right attributes: functionally, it does what it is supposed to do and it also has the right non-functional attributes, so it is fast
enough, easy to understand and so on.
What is the cost of defects?
• As well as considering the impact of failures arising from defects we have not found, we need to consider the impact of when we find those defects.
The cost of finding and fixing defects rises considerably across the life cycle; think of the old English proverb 'a stitch in time saves nine'. This means
that if you mend a tear in your sleeve now while it is small, it's easy to mend, but if you leave it, it will get worse and need more stitches to mend it.
FIGURE 1.1 WE CAN SEE HOW DEFECTS MAY ARISE IN FOUR REQUIREMENTS FOR A PRODUCT.
why testing is needed ?
ROLE OF TESTING IN SOFTWARE DEVELOPMENT,
MAINTENANCE AND OPERATIONS
We have seen that human errors can cause a defect or fault to be introduced at any
stage within the software development life cycle and, depending upon the
consequences of the mistake, the results can be trivial or catastrophic. Rigorous
testing is necessary during development and maintenance to identify defects, in order
to reduce failures in the operational environment and increase the quality of the
operational system. This includes looking for places in the user interface where a user
might make a mistake in input of data or in the interpretation of the output, and
looking for potential weak points for intentional and malicious attack. Executing tests
helps us move towards improved quality of product and service, but that is just one of
the verification and validation methods applied to products. Processes are also
checked, for example by audit. A variety of methods may be used to check work, some
of which are done by the author of the work and some by others to get an
independent view.
why testing is needed ?
TESTING AND QUALITY
What is quality?
• Projects aim to deliver software to specification. For the project to deliver what the customer needs requires a correct specification. Additionally, the
delivered system must meet the specification. This is known as validation ('is this the right specification?') and verification ('is the system correct to
specification?'). Of course, as well as wanting the right software system built correctly, the customer wants the project to be within budget and
timescale - it should arrive when they need it and not cost too much.
What is root cause analysis?
• When we detect failures, we might try to track them back to their root cause, the real reason that they happened. There are several ways of carrying
out root cause analysis, often involving a group brainstorming ideas and discussing them, so you may see different techniques in different
organizations. If you are interested in using root cause analysis in your work, you'll find simple techniques described in [Evans], [TQMI] and [Robson].
For example, suppose an organization has a problem with printing repeatedly failing. Some IT maintenance folk get together to examine the
problem and they start by brainstorming all the possible causes of the failures. Then they group them into categories they have chosen, and see if
there are common underlying or root causes.
why testing is needed ?
HOW MUCH TESTING IS ENOUGH?
Testing Principle - Exhaustive testing is impossible
Testing everything (all combinations of inputs and preconditions) is not feasible
except for trivial cases. Instead of exhaustive testing, we use risks and priorities to
focus testing efforts.
why testing is needed ?
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.
WHAT IS TESTING?
WHAT IS TESTING?
The driving test - an analogy for software testing
• We have spent some time describing why we need to test, but we have not discussed what testing is. What
do we mean by the word testing? We use the words test and testing in everyday life and earlier we said
testing could be described as 'checking the software is OK'
Defining software testing
• With that analogy in mind, let's look at the ISTQB definition of software testing.
Software test and driving test compared
• 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.
When can we meet our test objectives?
•Testing activities should start as early as possible in the software or system development life cycle and should be focused on defined
objectives.
Focusing on defects can help us plan our tests
•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'.
The defect clusters change over time
•If the same tests are repeated over and over again, eventually the same set of test cases will no longer find any new bugs. To overcome this
'pesticide paradox', the test cases need to be regularly reviewed and revised, and new and different tests need to be written to exercise
different parts of the software or system to potentially find more defects.
WHAT IS TESTING?
TESTING TEST PROCESS
• Introduction
• Test Planning and control
• Test Analysis and Design
• Test implementation and execution
• Evaluating exit criteria and reporting
• Test Closure Activities
FUNDAMENTAL TEST PROCESS
FUNDAMENTAL
TEST PROCESS
confirmation
testing
exit criteria
incident
regression
testing
test basis
test condition
test coveragetest data
test log
test strategy
test plan
test execution
testware.
test
summary
report
THE PSYCHOLOGY OF
TESTING
Independent testing - who is a tester?
• The mindset we want to use while testing and reviewing is
different from the one we use while analyzing or developing.
2.Why do we sometimes not get on with the rest
of the team?
• As well as independence, separation of the tester role from the developer
role is also done to help focus effort and to provide the benefits of trained
and professional testing resources. In many organizations, earlier stages of
testing are carried out by the developers and integrators and later stages
independently, either by a specialist test group or by the customers.
SEKIAN TERIMA KASIH
BIBLIOGRAPHY
Graham et.al. (2011). ISTQB-Fondation of Software
Testing. London: Cengage Learning EMEA.
LINK
• http://sif.uin-suska.ac.id/
• http://fst.uin-suska.ac.id/
• http://www.uin-suska.ac.id/

More Related Content

PPTX
Fundamentals of testing what is testing (reference graham et.al (2006))
PPTX
PPTX
FADHILLA ELITA Ppt Chapter 1
PPTX
Fundamentals of testing 2
PDF
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
PPTX
Fundamentals of testing
PPTX
Fundamentals of testing
PPTX
Fundamental of testing (what is testing)
Fundamentals of testing what is testing (reference graham et.al (2006))
FADHILLA ELITA Ppt Chapter 1
Fundamentals of testing 2
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
Fundamentals of testing
Fundamentals of testing
Fundamental of testing (what is testing)

What's hot (20)

PPT
01. foundamentals of testing
PPTX
FUNDAMENTALS OF TESTING (Fundamental of testing what)
PPTX
Negative Testing
PPTX
Materi testing dan Implementasi sistem - Fundamentals of testing-What is Testing
PPTX
fundamentals of testing (Fundamental of testing what)
PDF
Effective Testing fo Startups
PPTX
Software testing-in-gurgaon
DOC
38475471 qa-and-software-testing-interview-questions-and-answers
PPT
Beginners QA Testing
PPT
Basics of Software Testing
PDF
software testing for beginners
PDF
Software testing main
PPTX
Best practices for test automation
PDF
Software testing interview Q&A – Part 2
PDF
Best Practices In Exploratory Testing
PPTX
Top Agile Myths & Misconceptions
PDF
Rapid Software Testing
PDF
Inrotduction of Testing
PDF
Software Testing Interview Q&A – part 1
PDF
Software Testing As a Career Path
01. foundamentals of testing
FUNDAMENTALS OF TESTING (Fundamental of testing what)
Negative Testing
Materi testing dan Implementasi sistem - Fundamentals of testing-What is Testing
fundamentals of testing (Fundamental of testing what)
Effective Testing fo Startups
Software testing-in-gurgaon
38475471 qa-and-software-testing-interview-questions-and-answers
Beginners QA Testing
Basics of Software Testing
software testing for beginners
Software testing main
Best practices for test automation
Software testing interview Q&A – Part 2
Best Practices In Exploratory Testing
Top Agile Myths & Misconceptions
Rapid Software Testing
Inrotduction of Testing
Software Testing Interview Q&A – part 1
Software Testing As a Career Path
Ad

Similar to Fundamentals of testing (20)

PPTX
Chapter 1 Fundamentals of Testing
PPTX
Fundamentals of testing
PPTX
Fundamentals of testing
PPTX
2.fundamental of testing
PPTX
Fundamental Of Testing
PPTX
Testing and quality romi
PPTX
Fundamentals of testing
PPTX
SOFTWARE TESTING TRAFUNDAMENTALS OF SOFTWARE TESTING.pptx
PPTX
Fundamentals of testing
PPTX
Fundamentals of testing
PPTX
What is testing
PPTX
Fundamentals of testing (what is testing)
PPTX
Fundamentals of testing
PPTX
Fundamentals of testing
PPTX
Fundamentals of testing
PPTX
Testing and quality
PPTX
Fundamentals of testing
PPTX
Fundamentals of testing aldi
PPTX
Fundamentals of testing
PDF
Fundamentals of testing (1)
Chapter 1 Fundamentals of Testing
Fundamentals of testing
Fundamentals of testing
2.fundamental of testing
Fundamental Of Testing
Testing and quality romi
Fundamentals of testing
SOFTWARE TESTING TRAFUNDAMENTALS OF SOFTWARE TESTING.pptx
Fundamentals of testing
Fundamentals of testing
What is testing
Fundamentals of testing (what is testing)
Fundamentals of testing
Fundamentals of testing
Fundamentals of testing
Testing and quality
Fundamentals of testing
Fundamentals of testing aldi
Fundamentals of testing
Fundamentals of testing (1)
Ad

Recently uploaded (20)

PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
Insiders guide to clinical Medicine.pdf
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PPTX
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Pre independence Education in Inndia.pdf
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
Cell Structure & Organelles in detailed.
PDF
RMMM.pdf make it easy to upload and study
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
01-Introduction-to-Information-Management.pdf
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Microbial diseases, their pathogenesis and prophylaxis
O7-L3 Supply Chain Operations - ICLT Program
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
Insiders guide to clinical Medicine.pdf
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Pre independence Education in Inndia.pdf
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Cell Structure & Organelles in detailed.
RMMM.pdf make it easy to upload and study
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
Module 4: Burden of Disease Tutorial Slides S2 2025
01-Introduction-to-Information-Management.pdf
2.FourierTransform-ShortQuestionswithAnswers.pdf

Fundamentals of testing

  • 2. THE FUNDAMENTALS OF TESTING: why testing is needed ? its limitations, objectives and purpose; the principles behind testing the process that testers follow; some of the psychological factors that testers must consider in their work.
  • 3. why testing is needed ? Software systems context • Testing Principle - Testing is context dependent Testing is done differently in different contexts. For example, safety-critical software is tested differently from an e- commerce site
  • 4. why testing is needed ? Causes of software defects Do our mistakes matter? • Let's think about the consequences of mistakes. We agree that any human being, programmers and testers included, can make an error. These errors may produce defects in the software code or system, or in a document. If a defect in code is executed, the system may experience a failure. So the mistakes we make matter partly because they have consequences for the products for which we are responsible. When do defects arise? • In Figure 1.1 we can see how defects may arise in four requirements for a product. We can see that requirement 1 is implemented correctly - we understood the customer's requirement, designed correctly to meet that requirement, built correctly to meet the design, and so deliver that requirement with the right attributes: functionally, it does what it is supposed to do and it also has the right non-functional attributes, so it is fast enough, easy to understand and so on. What is the cost of defects? • As well as considering the impact of failures arising from defects we have not found, we need to consider the impact of when we find those defects. The cost of finding and fixing defects rises considerably across the life cycle; think of the old English proverb 'a stitch in time saves nine'. This means that if you mend a tear in your sleeve now while it is small, it's easy to mend, but if you leave it, it will get worse and need more stitches to mend it.
  • 5. FIGURE 1.1 WE CAN SEE HOW DEFECTS MAY ARISE IN FOUR REQUIREMENTS FOR A PRODUCT. why testing is needed ?
  • 6. ROLE OF TESTING IN SOFTWARE DEVELOPMENT, MAINTENANCE AND OPERATIONS We have seen that human errors can cause a defect or fault to be introduced at any stage within the software development life cycle and, depending upon the consequences of the mistake, the results can be trivial or catastrophic. Rigorous testing is necessary during development and maintenance to identify defects, in order to reduce failures in the operational environment and increase the quality of the operational system. This includes looking for places in the user interface where a user might make a mistake in input of data or in the interpretation of the output, and looking for potential weak points for intentional and malicious attack. Executing tests helps us move towards improved quality of product and service, but that is just one of the verification and validation methods applied to products. Processes are also checked, for example by audit. A variety of methods may be used to check work, some of which are done by the author of the work and some by others to get an independent view. why testing is needed ?
  • 7. TESTING AND QUALITY What is quality? • Projects aim to deliver software to specification. For the project to deliver what the customer needs requires a correct specification. Additionally, the delivered system must meet the specification. This is known as validation ('is this the right specification?') and verification ('is the system correct to specification?'). Of course, as well as wanting the right software system built correctly, the customer wants the project to be within budget and timescale - it should arrive when they need it and not cost too much. What is root cause analysis? • When we detect failures, we might try to track them back to their root cause, the real reason that they happened. There are several ways of carrying out root cause analysis, often involving a group brainstorming ideas and discussing them, so you may see different techniques in different organizations. If you are interested in using root cause analysis in your work, you'll find simple techniques described in [Evans], [TQMI] and [Robson]. For example, suppose an organization has a problem with printing repeatedly failing. Some IT maintenance folk get together to examine the problem and they start by brainstorming all the possible causes of the failures. Then they group them into categories they have chosen, and see if there are common underlying or root causes. why testing is needed ?
  • 8. HOW MUCH TESTING IS ENOUGH? Testing Principle - Exhaustive testing is impossible Testing everything (all combinations of inputs and preconditions) is not feasible except for trivial cases. Instead of exhaustive testing, we use risks and priorities to focus testing efforts. why testing is needed ?
  • 9. 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. WHAT IS TESTING?
  • 10. WHAT IS TESTING? The driving test - an analogy for software testing • We have spent some time describing why we need to test, but we have not discussed what testing is. What do we mean by the word testing? We use the words test and testing in everyday life and earlier we said testing could be described as 'checking the software is OK' Defining software testing • With that analogy in mind, let's look at the ISTQB definition of software testing. Software test and driving test compared • 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.
  • 11. When can we meet our test objectives? •Testing activities should start as early as possible in the software or system development life cycle and should be focused on defined objectives. Focusing on defects can help us plan our tests •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'. The defect clusters change over time •If the same tests are repeated over and over again, eventually the same set of test cases will no longer find any new bugs. To overcome this 'pesticide paradox', the test cases need to be regularly reviewed and revised, and new and different tests need to be written to exercise different parts of the software or system to potentially find more defects. WHAT IS TESTING?
  • 12. TESTING TEST PROCESS • Introduction • Test Planning and control • Test Analysis and Design • Test implementation and execution • Evaluating exit criteria and reporting • Test Closure Activities
  • 13. FUNDAMENTAL TEST PROCESS FUNDAMENTAL TEST PROCESS confirmation testing exit criteria incident regression testing test basis test condition test coveragetest data test log test strategy test plan test execution testware. test summary report
  • 14. THE PSYCHOLOGY OF TESTING Independent testing - who is a tester? • The mindset we want to use while testing and reviewing is different from the one we use while analyzing or developing. 2.Why do we sometimes not get on with the rest of the team? • As well as independence, separation of the tester role from the developer role is also done to help focus effort and to provide the benefits of trained and professional testing resources. In many organizations, earlier stages of testing are carried out by the developers and integrators and later stages independently, either by a specialist test group or by the customers.
  • 16. BIBLIOGRAPHY Graham et.al. (2011). ISTQB-Fondation of Software Testing. London: Cengage Learning EMEA.