SlideShare a Scribd company logo
Software Testing Part I
Thinking in Software Testing
Saroj Sangphongamphai, August 2015
ss.saroj@gmail.com
Sincerely grateful to all
teachers, professors, books,
websites, and others.
Think Big, Set the High Goal
Thinking in software testing
Thinking in software testing
Thinking in software testing
Thinking in software testing
Software development life cycle

Analysis and design

Planing

Implementation

Testing

Deployment
What is software testing?
1.Testing is the process of demonstrating that errors
are not present.
2.The purpose of testing is to show that a program
performs its intended functions correctly.
3.Testing is the process of establishing confidence
that a program does what it is supposed to do.
What is software testing?
Testing is the process of executing a
program with the intent of finding
errors.
Terms for software failures
Defect
Fault
Problem
Error
Incident
Anomaly
Variance
Failure
Inconsistency
Feature
Bug
Etc.
Software bug: a formal definition
(1 of 5)
The software does not do something that
the product specification says it should
do.
Software bug: a formal definition
(2 of 5)
The software does something that the
product specification says it should not
do.
Software bug: a formal definition
(3 of 5)
The software does something that the
product specification does not mention.
Software bug: a formal definition
(4 of 5)
The software does not do something that
the product specification does not
mention but should.
Software bug: a formal definition
(5 of 5)
The software is difficult to understand,
hard to use, slow, or in the software
tester’s eyes will be viewed by the end
user as just plain not right.
Software bug: a formal definition
1.The software does not do something that the product specification says
it should do.
2.The software does something that the product specification says it
should not do.
3.The software does something that the product specification does not
mention.
4.The software does not do something that the product specification does
not mention but should.
5.The software is difficult to understand, hard to use, slow, or in the
software tester’s eyes will be viewed by the end user as just plain not
right.
Insights from a Venn Diagram
Insights from a Venn Diagram
Why do bug occurs?
The cost of bugs
 To find bugs
 To find them as early as possible
 And to make sure they get fixed
The goal of a software tester
The challenge of software testing
Exhaustive testing is impractical.
Exhaustive testing is impractical
A simple function adds two 32 bit numbers and returns a result.
Assumption: we can execute 1,000 test cases per second
How long will it take to exhaustively test this function?
(Signed range 32 bits integer is -2,147,483,648 to 2,147,483,647 and unsigned: 0 to 4,294,967,295)
Exhaustive testing is impractical
A simple function adds two 32 bit numbers and returns a result.
Assumption: we can execute 1,000 test cases per second
How long will it take to exhaustively test this function?
Answer: 585 million years
2 (32+32)
/1000/60/60/24/365 = 584,942,417 years.
(Signed range 32 bits integer is -2,147,483,648 to 2,147,483,647 and unsigned: 0 to 4,294,967,295)
Optimal amount of testing
The psychology of software testing
A successful test case is one that
detects an undiscovered error.
The psychology of software testing
The psychology of software testing
Testing can only show the presence of
errors, not their absence.
The psychology of software testing
A necessary part of a test case is a
definition of the expected output or
result.
The difference between testing and
debugging
Testing = Find Bug
Debugging = Remove Bug
Quality is free
Early testing, more prevention than
detection
Quality is not equal to test
If it is not built right in the first place,
then it is never going to be right.
Quality is not equal to test
Quality is achieved by putting development and testing into a blender
and mixing them until one is indistinguishable from the other.
Primary metric
Cycle time
Reference
Question & Answer
Next
Software Testing Part II
Testing Techniques

More Related Content

PPT
Introduction to software engineering
PPTX
First steps in testing analytics: Does test code quality matter?
PPTX
Software Analytics: The Dark Side and the Test Side
PPTX
Ian Agustiawan - Tech Days
PDF
Got Myth? Myths in Software Engineering
PPTX
Nimbuzz advanced vs novice testers
DOC
简历2017(英文)
Introduction to software engineering
First steps in testing analytics: Does test code quality matter?
Software Analytics: The Dark Side and the Test Side
Ian Agustiawan - Tech Days
Got Myth? Myths in Software Engineering
Nimbuzz advanced vs novice testers
简历2017(英文)

What's hot (18)

PPTX
TDD: Facts and Fallacies
PDF
Treating Code Quality as a First Class Entity (icsme15) [doc. symposium]
PPT
9. risk-management
PPTX
Pertanyaan dan jawaban (graham et.al 2011) part 2
PPTX
Pertanyaan dan jawaban (graham et.al 2011)
PPTX
Code review at large scale
PPTX
Pertanyaan dan jawaban (graham et.al 2011) part 3
PPTX
Test Driven Development
PDF
Let's review it: What designers can learn from (code) review
PPTX
Software engineering 22 error detection and debugging
PDF
Sigma Open Tech Week: Bitter Truth About Software Security
PDF
PhD Welcome Day 2014
PPT
CASA: Context-Aware Scalable Authentication, at SOUPS 2013
PDF
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
PDF
Beginner's Guide
PPTX
Improve Security through Continuous Testing
PDF
IDEAL: An Open-Source Identifier Name Appraisal Tool
PPTX
Top 3 Benefits of Framework Based Assessments
TDD: Facts and Fallacies
Treating Code Quality as a First Class Entity (icsme15) [doc. symposium]
9. risk-management
Pertanyaan dan jawaban (graham et.al 2011) part 2
Pertanyaan dan jawaban (graham et.al 2011)
Code review at large scale
Pertanyaan dan jawaban (graham et.al 2011) part 3
Test Driven Development
Let's review it: What designers can learn from (code) review
Software engineering 22 error detection and debugging
Sigma Open Tech Week: Bitter Truth About Software Security
PhD Welcome Day 2014
CASA: Context-Aware Scalable Authentication, at SOUPS 2013
Publish or Perish: Questioning the Impact of Our Research on the Software Dev...
Beginner's Guide
Improve Security through Continuous Testing
IDEAL: An Open-Source Identifier Name Appraisal Tool
Top 3 Benefits of Framework Based Assessments
Ad

Similar to Thinking in software testing (20)

PPTX
SoftwareTesting.pptx
PPTX
A Software Testing Intro
PPTX
ST UNIT-1.pptx
PPTX
SOFTWARE TESTING TRAFUNDAMENTALS OF SOFTWARE TESTING.pptx
PPTX
Fundamentals of testing
PPTX
CTFL Module 01
PPTX
Istqb foundation level day 1
PDF
stm f.pdf
PDF
What is software testing in software engineering?
PDF
What is Testing in Software Engineering?
PPTX
1 testing fundamentals
ODP
Importanc of softwaretesting
PPTX
Software testing foundation
PPT
Software testing
PPTX
What is testing?
PDF
Software testing
PPT
Software testing overview subbu
PPTX
Fundamentals of Testing
PPTX
stm unit-1part-I-1.pptx about part 1 syallbus
DOCX
Istqb v.1.2
SoftwareTesting.pptx
A Software Testing Intro
ST UNIT-1.pptx
SOFTWARE TESTING TRAFUNDAMENTALS OF SOFTWARE TESTING.pptx
Fundamentals of testing
CTFL Module 01
Istqb foundation level day 1
stm f.pdf
What is software testing in software engineering?
What is Testing in Software Engineering?
1 testing fundamentals
Importanc of softwaretesting
Software testing foundation
Software testing
What is testing?
Software testing
Software testing overview subbu
Fundamentals of Testing
stm unit-1part-I-1.pptx about part 1 syallbus
Istqb v.1.2
Ad

Recently uploaded (20)

PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Transform Your Business with a Software ERP System
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
AI in Product Development-omnex systems
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
history of c programming in notes for students .pptx
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
medical staffing services at VALiNTRY
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
Design an Analysis of Algorithms I-SECS-1021-03
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Transform Your Business with a Software ERP System
How to Choose the Right IT Partner for Your Business in Malaysia
Reimagine Home Health with the Power of Agentic AI​
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Understanding Forklifts - TECH EHS Solution
Internet Downloader Manager (IDM) Crack 6.42 Build 41
AI in Product Development-omnex systems
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Upgrade and Innovation Strategies for SAP ERP Customers
PTS Company Brochure 2025 (1).pdf.......
history of c programming in notes for students .pptx
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
medical staffing services at VALiNTRY
Wondershare Filmora 15 Crack With Activation Key [2025

Thinking in software testing

  • 1. Software Testing Part I Thinking in Software Testing Saroj Sangphongamphai, August 2015 ss.saroj@gmail.com
  • 2. Sincerely grateful to all teachers, professors, books, websites, and others.
  • 3. Think Big, Set the High Goal
  • 8. Software development life cycle  Analysis and design  Planing  Implementation  Testing  Deployment
  • 9. What is software testing? 1.Testing is the process of demonstrating that errors are not present. 2.The purpose of testing is to show that a program performs its intended functions correctly. 3.Testing is the process of establishing confidence that a program does what it is supposed to do.
  • 10. What is software testing? Testing is the process of executing a program with the intent of finding errors.
  • 11. Terms for software failures Defect Fault Problem Error Incident Anomaly Variance Failure Inconsistency Feature Bug Etc.
  • 12. Software bug: a formal definition (1 of 5) The software does not do something that the product specification says it should do.
  • 13. Software bug: a formal definition (2 of 5) The software does something that the product specification says it should not do.
  • 14. Software bug: a formal definition (3 of 5) The software does something that the product specification does not mention.
  • 15. Software bug: a formal definition (4 of 5) The software does not do something that the product specification does not mention but should.
  • 16. Software bug: a formal definition (5 of 5) The software is difficult to understand, hard to use, slow, or in the software tester’s eyes will be viewed by the end user as just plain not right.
  • 17. Software bug: a formal definition 1.The software does not do something that the product specification says it should do. 2.The software does something that the product specification says it should not do. 3.The software does something that the product specification does not mention. 4.The software does not do something that the product specification does not mention but should. 5.The software is difficult to understand, hard to use, slow, or in the software tester’s eyes will be viewed by the end user as just plain not right.
  • 18. Insights from a Venn Diagram
  • 19. Insights from a Venn Diagram
  • 20. Why do bug occurs?
  • 21. The cost of bugs
  • 22.  To find bugs  To find them as early as possible  And to make sure they get fixed The goal of a software tester
  • 23. The challenge of software testing Exhaustive testing is impractical.
  • 24. Exhaustive testing is impractical A simple function adds two 32 bit numbers and returns a result. Assumption: we can execute 1,000 test cases per second How long will it take to exhaustively test this function? (Signed range 32 bits integer is -2,147,483,648 to 2,147,483,647 and unsigned: 0 to 4,294,967,295)
  • 25. Exhaustive testing is impractical A simple function adds two 32 bit numbers and returns a result. Assumption: we can execute 1,000 test cases per second How long will it take to exhaustively test this function? Answer: 585 million years 2 (32+32) /1000/60/60/24/365 = 584,942,417 years. (Signed range 32 bits integer is -2,147,483,648 to 2,147,483,647 and unsigned: 0 to 4,294,967,295)
  • 26. Optimal amount of testing
  • 27. The psychology of software testing A successful test case is one that detects an undiscovered error.
  • 28. The psychology of software testing
  • 29. The psychology of software testing Testing can only show the presence of errors, not their absence.
  • 30. The psychology of software testing A necessary part of a test case is a definition of the expected output or result.
  • 31. The difference between testing and debugging Testing = Find Bug Debugging = Remove Bug
  • 33. Early testing, more prevention than detection
  • 34. Quality is not equal to test If it is not built right in the first place, then it is never going to be right.
  • 35. Quality is not equal to test Quality is achieved by putting development and testing into a blender and mixing them until one is indistinguishable from the other.
  • 39. Next Software Testing Part II Testing Techniques