SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
FUNDAMENTALS OF TESTING
       Hoang V. Nguyen
       startnewday85@gmail.com
       startnewday85.blogspot.com
       Dept. of Computer Science – FIT - HUA




Tester Training Course
Tester Training Course   2011
Explorapedia, World of Nature, version 1.0




Tester Training Course                       2011
Tester Training Course   2011
Pepsi 349 Scandal




 Tester Training Course   2011
European Space Agency Ariane 5




              After 37 ½ seconds, was destroyed
                         $370 millions

Tester Training Course                            2011
London Ambulance Service




Tester Training Course     2011
What happened?


Tester Training Course   2011
Tester Training Course   2011
What Failures’ effects?


Tester Training Course   2011
What Failures’ effects?
             Can harm:
                 • people
                 • companies
                 • the environment


             Can lead to:
                 • Loss of money
                 • Loss of time
                 • Loss of business reputation
                 • Injury
                 • Death


Tester Training Course                           2011
Tester Training Course   2011
Tester Training Course   2011
DEFECT
                         FAULT   BUG




Tester Training Course                 2011
Tester Training Course   2011
Why do defects occur in products?
             Made by human
                 • Who know some thing, but not everything
                 • Who have skills, but aren’t perfect

            ==> Who do make mistakes(errors)

             Under pressure
                      • deadline
                      • complexity ( system , organization)
                      • individual reasons
                    ==> no time to check
                    ==> systems may be incomplete
                    ==> increased frequency of errors

Tester Training Course                                        2011
Reliability and Defect
       Reliability: the probability that software will not
      cause the failure of the system for a specified time
      under specified conditions

          Can a system be defect-free?


          Can a system be reliable but still contains defects?


          Is a ”defect-free” system always reliable?




 Tester Training Course                                          2011
 Error/Mistake
      a human action which produces an
      incorrect result

  Defect/Fault/Bug
      a manifestation of an error in
      software

  Failure
      deviation of the software from its
      expected delivery or service




Tester Training Course                     2011
Error – Defect – Failure
             make




         Failure is an event; defect is a state of the software,
                          caused by an error
Tester Training Course                                             2011
When do defects arise in SD context?
                                                           Mistakes
      Correct              Correct         Correct
                                                           made in
    requirement          requirement     requirement
                                                         requirement

    Designed to          Designed to       Mistakes      Designed to
       meet                 meet           make in          meet
    requirement          requirement        design       requirement


   Built to meet          Mistakes       Built to meet   Built to meet
      design             make in built      design          design


      Product                                              Wrong
                         Product has     Product has
     works as                                              product
                          bugs in it     design flaws
     expected                                             delivered



Tester Training Course                                                   2011
What does It cost to fix a defect?




Tester Training Course                  2011
Question
     A bug or defect is:



A mistake made by a person;


A run-time problem experienced by a user;


The result of an error or mistake;


The result of a failure, which may lead to an error?




 Tester Training Course                                2011
Question
     When what is visible to end-users is a deviation
     from the specific or expected behavior, this is
     called:


An Error


A fault


A Failure


A defect


A mistake


 Tester Training Course                                 2011
Tester Training Course   2011
Question
     Debugging is:


Testing/checking whether the software performs
correctly;

Checking that a previously reported defect has been
corrected;

Identifying the cause of a defect, repairing the code
and checking the fix is correct;

Checking that no unintended consequences have
occurred as a result of a fix




 Tester Training Course                                 2011
Why is testing necessary?




Tester Training Course      2011
Why is testing necessary?
    Because software is likely to have faults

    To learn about the reliability of the software

    To fill the time between delivery of the software and the release
    date

    To prove that the software has no faults

    Because testing is included in the project plan

    Because failures can be very expensive

    To avoid being used by customers

    To stay in business


Tester Training Course                                                  2011
Testing and Quality
        Quality: get the satisfaction of all stakeholders
                                   Time

                                          Budget
                    Quality
                                          Satisfy customers

                                   Technically excellent

        Testing help us to measure and improve the quality
       of software
                 • give confidence in the quality of software



Tester Training Course                                          2011
What is testing?
  The process consisting of all lifecycle 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




    This is a suitable definition of testing for any level of testing.




 Tester Training Course                                                  2011
Tester Training Course   2011
How much testing is enough?




 Tester Training Course       2011
“Test everything”
                             Avr. 4 menus
                             3 options / menu


system has                                      Average: 10 fields / screen
20 screens                                      2 types input / field
                                                (date as Jan 3 or 3/1)
                                                (number as integer or decimal)
                                                Around 100 possible values

        Total for 'exhaustive' testing:
             20 x 4 x 3 x 10 x 2 x 100 = 480,000 tests
        If 1 second per test, 8000 mins, 133 hrs, 17.7 days
        (not counting finger trouble, faults or retest)


Tester Training Course                                                      2011
Question
     What is exhausive testing?



When all the testers are exhausted;


When all the planned tests have been executed;

Exercising all combinations of inputs and
preconditions




 Tester Training Course                          2011
Question
                         How much time will exhaustive testing take?


                         Infinite time;


                         No much time;


                         Impractical amount of time.




Tester Training Course                                             2011
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.




 Tester Training Course                                       2011
How much testing is enough?
    It’s never engough;

    When you have done what you planned;

    When your customer/user is happy;

    When you have proved that the system works correctly;

    When you are confident that the system work correctly;

    It depends on the risk for your system.




Tester Training Course                                       2011
Tester Training Course   2011
RISK and TESTING
       The number of test depends on RISK
          •   RISK of missing important faults
          •   RISK of incurring failure costs
          •   RISK of releasing untested or under-tested software
          •   RISK of losing credibility and market share
          •   RISK of missing a market window
          •   RISK of over-testing, ineffective testing

      use RISK to determine:
          •   what to test first
          •   what to test most
          •   how thoroughly to test each item
          •   What not to test (this time)
      use RISK to:
          • Allocate the time available for testing by prioritising
            testing ...
 Tester Training Course                                               2011
When can we meet our test objectives?

         Testing principle


                             Early testing


         Testing activities should start as early as possible
         in the software or system development life cycle
         and should be focused on defined objectives.




 Tester Training Course                                         2011
Tester Training Course   2011
Is the software defect free?

          Testing principle


            Testing shows 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 but, even if no defects
         are found, it is not a proof of correctness.




 Tester Training Course                                      2011
How are defects distributed?

         Testing principle


                          Defect clustering


         A small number of modules contain most of the
         defects discovered during pre-release testing or
         show the most operational failures.




 Tester Training Course                                     2011
The defect clusters change over time

        Testing principle


                         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 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.


Tester Training Course                                                  2011
Tester Training Course   2011
Testing principle


             Absence-of-errors fallacy

        Finding and fixing defects does not help if the
        system built is unusable and does not fulfill the
        users' needs and expectations.




Tester Training Course                                      2011
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.




Tester Training Course                                       2011
1
                             2
                         3
                     4
                 5
             6
         7
Tester Training Course               2011
Question
     Which statement is most true?


Different testing is needed depending upon the
application.

All software is tested in the same way.

A technique that finds defects will always find
defects.

A technique that has found no defects is not useful.




 Tester Training Course                                2011
Question
                         When is testing complete?


                         When time and budget are exhaused.

                         When there is enough information for sponsors to
                         make an informed decision about release.

                         When there are no remaining high priority defects
                         outstanding.

                         When every data combination has been exercised
                         successfully.




Tester Training Course                                                       2011
• Why testing is necessary?
                         • Failure, Fault, Bug, Defect, Error, Mistake
                         • What is testing?
                         • 7 general testing principles
                         • Testing and Reliability
                         • Testing and Quality
                         • Testing and Debugging




Tester Training Course                                               2011

Weitere ähnliche Inhalte

Was ist angesagt?

Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-conceptsmedsherb
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software TestingBeat Fluri
 
Software testing-in-gurgaon
Software testing-in-gurgaonSoftware testing-in-gurgaon
Software testing-in-gurgaonAP EDUSOFT
 
Software Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, PuneSoftware Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, Punesanjayjadhav8789
 
Test Process
Test ProcessTest Process
Test Processtokarthik
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1Raghu Kiran
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testingBugRaptors
 
Software Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftware Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftheme
 
Software Testing Basic Concepts
Software Testing Basic ConceptsSoftware Testing Basic Concepts
Software Testing Basic Conceptswesovi
 
powerpoint template for testing training
powerpoint template for testing trainingpowerpoint template for testing training
powerpoint template for testing trainingJohn Roddy
 
Strategies For Software Test Documentation
Strategies For Software Test Documentation Strategies For Software Test Documentation
Strategies For Software Test Documentation Vishwak Solution
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 

Was ist angesagt? (20)

Software testing overview subbu
Software testing overview subbuSoftware testing overview subbu
Software testing overview subbu
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software Testing
 
Software testing-in-gurgaon
Software testing-in-gurgaonSoftware testing-in-gurgaon
Software testing-in-gurgaon
 
Software Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, PuneSoftware Testing Tutorials - MindScripts Technologies, Pune
Software Testing Tutorials - MindScripts Technologies, Pune
 
Test Process
Test ProcessTest Process
Test Process
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftware Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief Overview
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing Basic Concepts
Software Testing Basic ConceptsSoftware Testing Basic Concepts
Software Testing Basic Concepts
 
Functional testing patterns
Functional testing patternsFunctional testing patterns
Functional testing patterns
 
powerpoint template for testing training
powerpoint template for testing trainingpowerpoint template for testing training
powerpoint template for testing training
 
Software testing
Software testingSoftware testing
Software testing
 
Strategies For Software Test Documentation
Strategies For Software Test Documentation Strategies For Software Test Documentation
Strategies For Software Test Documentation
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 

Andere mochten auch

ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0Samer Desouky
 
Software testing
Software testingSoftware testing
Software testingmkn3009
 
Automation testing overview
Automation testing overviewAutomation testing overview
Automation testing overviewAmrita Bisht
 
Software test automation_overview
Software test automation_overviewSoftware test automation_overview
Software test automation_overviewRohan Bhattarai
 
Eleven step of software testing process
Eleven step of software testing processEleven step of software testing process
Eleven step of software testing processHimanshu
 
Software Testing Process
Software Testing ProcessSoftware Testing Process
Software Testing Processguest1f2740
 
Atlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps SessionAtlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps SessionSourcesense
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual TestingDirecti Group
 
Test Process Improvement with TPI NEXT - what the model does not tell you but...
Test Process Improvement with TPI NEXT - what the model does not tell you but...Test Process Improvement with TPI NEXT - what the model does not tell you but...
Test Process Improvement with TPI NEXT - what the model does not tell you but...SQALab
 
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...Peter Leschev
 
Calidad de Gestión en servicios IT
Calidad de Gestión en servicios ITCalidad de Gestión en servicios IT
Calidad de Gestión en servicios ITNbarros
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsKMS Technology
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test AutomationPekka Klärck
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de softwareGuillermo Lemus
 
Automated vs manual testing
Automated vs manual testingAutomated vs manual testing
Automated vs manual testingKanoah
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development processRiant Soft
 

Andere mochten auch (20)

ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
 
Software testing
Software testingSoftware testing
Software testing
 
Automation testing overview
Automation testing overviewAutomation testing overview
Automation testing overview
 
Software test automation_overview
Software test automation_overviewSoftware test automation_overview
Software test automation_overview
 
Eleven step of software testing process
Eleven step of software testing processEleven step of software testing process
Eleven step of software testing process
 
Software Testing Process
Software Testing ProcessSoftware Testing Process
Software Testing Process
 
From QA To Dev-QA-Ops
From QA To Dev-QA-OpsFrom QA To Dev-QA-Ops
From QA To Dev-QA-Ops
 
Atlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps SessionAtlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps Session
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Test Process Improvement with TPI NEXT - what the model does not tell you but...
Test Process Improvement with TPI NEXT - what the model does not tell you but...Test Process Improvement with TPI NEXT - what the model does not tell you but...
Test Process Improvement with TPI NEXT - what the model does not tell you but...
 
Testing - Ing. Gabriela Muñoz
Testing - Ing. Gabriela MuñozTesting - Ing. Gabriela Muñoz
Testing - Ing. Gabriela Muñoz
 
Testing & Quality Assurance
Testing & Quality AssuranceTesting & Quality Assurance
Testing & Quality Assurance
 
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
 
Calidad de Gestión en servicios IT
Calidad de Gestión en servicios ITCalidad de Gestión en servicios IT
Calidad de Gestión en servicios IT
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and Tools
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test Automation
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
Automated vs manual testing
Automated vs manual testingAutomated vs manual testing
Automated vs manual testing
 
Automated Testing
Automated TestingAutomated Testing
Automated Testing
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development process
 

Ähnlich wie Fundamentals of testing 1

Ähnlich wie Fundamentals of testing 1 (20)

Unit Testing
Unit TestingUnit Testing
Unit Testing
 
test
testtest
test
 
test
testtest
test
 
CTFL Module 01
CTFL Module 01CTFL Module 01
CTFL Module 01
 
Acceptance testfurureinmind
Acceptance testfurureinmindAcceptance testfurureinmind
Acceptance testfurureinmind
 
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
QA Best Practices at Atlogys - Tech Talk (Atlogys Academy)
 
Fundamentals of Testing
Fundamentals of TestingFundamentals of Testing
Fundamentals of Testing
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Testing Your Software Testers
Testing Your Software TestersTesting Your Software Testers
Testing Your Software Testers
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Industrial Training in Software Testing
Industrial Training in Software TestingIndustrial Training in Software Testing
Industrial Training in Software Testing
 
Basics in software testing
Basics in software testingBasics in software testing
Basics in software testing
 
Agile Testing 20021015
Agile Testing 20021015Agile Testing 20021015
Agile Testing 20021015
 
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
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By Srikanth
 
Testing Software
Testing SoftwareTesting Software
Testing Software
 
Fundamentals of testing
Fundamentals of testingFundamentals of testing
Fundamentals of testing
 
Testing introduction
Testing introductionTesting introduction
Testing introduction
 
Manual testing1
Manual testing1Manual testing1
Manual testing1
 

Mehr von Hoang Nguyen

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and ApplicationsHoang Nguyen
 
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introductionHoang Nguyen
 
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentHoang Nguyen
 
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forestsHoang Nguyen
 
Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital SignatureHoang Nguyen
 
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTINGHoang Nguyen
 
Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision MakingHoang Nguyen
 
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systemsHoang Nguyen
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor SystemsHoang Nguyen
 
Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS courseHoang Nguyen
 
Background Knowledge
Background KnowledgeBackground Knowledge
Background KnowledgeHoang Nguyen
 
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security CourseHoang Nguyen
 
Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS CourseHoang Nguyen
 

Mehr von Hoang Nguyen (20)

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and Applications
 
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introduction
 
ORM in Django
ORM in DjangoORM in Django
ORM in Django
 
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App Development
 
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forests
 
Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital Signature
 
Key Exchange
Key ExchangeKey Exchange
Key Exchange
 
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
 
Stream ciphers
Stream ciphersStream ciphers
Stream ciphers
 
Classical ciphers
Classical ciphersClassical ciphers
Classical ciphers
 
Confidentiality
ConfidentialityConfidentiality
Confidentiality
 
Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision Making
 
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systems
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor Systems
 
Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS course
 
Background Knowledge
Background KnowledgeBackground Knowledge
Background Knowledge
 
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security Course
 
Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS Course
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
 
Nosql intro
Nosql introNosql intro
Nosql intro
 

Kürzlich hochgeladen

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Fundamentals of testing 1

  • 1. FUNDAMENTALS OF TESTING Hoang V. Nguyen startnewday85@gmail.com startnewday85.blogspot.com Dept. of Computer Science – FIT - HUA Tester Training Course
  • 3. Explorapedia, World of Nature, version 1.0 Tester Training Course 2011
  • 5. Pepsi 349 Scandal Tester Training Course 2011
  • 6. European Space Agency Ariane 5 After 37 ½ seconds, was destroyed $370 millions Tester Training Course 2011
  • 7. London Ambulance Service Tester Training Course 2011
  • 10. What Failures’ effects? Tester Training Course 2011
  • 11. What Failures’ effects?  Can harm: • people • companies • the environment  Can lead to: • Loss of money • Loss of time • Loss of business reputation • Injury • Death Tester Training Course 2011
  • 14. DEFECT FAULT BUG Tester Training Course 2011
  • 16. Why do defects occur in products?  Made by human • Who know some thing, but not everything • Who have skills, but aren’t perfect ==> Who do make mistakes(errors)  Under pressure • deadline • complexity ( system , organization) • individual reasons ==> no time to check ==> systems may be incomplete ==> increased frequency of errors Tester Training Course 2011
  • 17. Reliability and Defect  Reliability: the probability that software will not cause the failure of the system for a specified time under specified conditions Can a system be defect-free? Can a system be reliable but still contains defects? Is a ”defect-free” system always reliable? Tester Training Course 2011
  • 18.  Error/Mistake a human action which produces an incorrect result  Defect/Fault/Bug a manifestation of an error in software  Failure deviation of the software from its expected delivery or service Tester Training Course 2011
  • 19. Error – Defect – Failure make Failure is an event; defect is a state of the software, caused by an error Tester Training Course 2011
  • 20. When do defects arise in SD context? Mistakes Correct Correct Correct made in requirement requirement requirement requirement Designed to Designed to Mistakes Designed to meet meet make in meet requirement requirement design requirement Built to meet Mistakes Built to meet Built to meet design make in built design design Product Wrong Product has Product has works as product bugs in it design flaws expected delivered Tester Training Course 2011
  • 21. What does It cost to fix a defect? Tester Training Course 2011
  • 22. Question A bug or defect is: A mistake made by a person; A run-time problem experienced by a user; The result of an error or mistake; The result of a failure, which may lead to an error? Tester Training Course 2011
  • 23. Question When what is visible to end-users is a deviation from the specific or expected behavior, this is called: An Error A fault A Failure A defect A mistake Tester Training Course 2011
  • 25. Question Debugging is: Testing/checking whether the software performs correctly; Checking that a previously reported defect has been corrected; Identifying the cause of a defect, repairing the code and checking the fix is correct; Checking that no unintended consequences have occurred as a result of a fix Tester Training Course 2011
  • 26. Why is testing necessary? Tester Training Course 2011
  • 27. Why is testing necessary? Because software is likely to have faults To learn about the reliability of the software To fill the time between delivery of the software and the release date To prove that the software has no faults Because testing is included in the project plan Because failures can be very expensive To avoid being used by customers To stay in business Tester Training Course 2011
  • 28. Testing and Quality  Quality: get the satisfaction of all stakeholders Time Budget Quality Satisfy customers Technically excellent  Testing help us to measure and improve the quality of software • give confidence in the quality of software Tester Training Course 2011
  • 29. What is testing? The process consisting of all lifecycle 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 This is a suitable definition of testing for any level of testing. Tester Training Course 2011
  • 31. How much testing is enough? Tester Training Course 2011
  • 32. “Test everything” Avr. 4 menus 3 options / menu system has Average: 10 fields / screen 20 screens 2 types input / field (date as Jan 3 or 3/1) (number as integer or decimal) Around 100 possible values Total for 'exhaustive' testing: 20 x 4 x 3 x 10 x 2 x 100 = 480,000 tests If 1 second per test, 8000 mins, 133 hrs, 17.7 days (not counting finger trouble, faults or retest) Tester Training Course 2011
  • 33. Question What is exhausive testing? When all the testers are exhausted; When all the planned tests have been executed; Exercising all combinations of inputs and preconditions Tester Training Course 2011
  • 34. Question How much time will exhaustive testing take? Infinite time; No much time; Impractical amount of time. Tester Training Course 2011
  • 35. 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. Tester Training Course 2011
  • 36. How much testing is enough? It’s never engough; When you have done what you planned; When your customer/user is happy; When you have proved that the system works correctly; When you are confident that the system work correctly; It depends on the risk for your system. Tester Training Course 2011
  • 38. RISK and TESTING  The number of test depends on RISK • RISK of missing important faults • RISK of incurring failure costs • RISK of releasing untested or under-tested software • RISK of losing credibility and market share • RISK of missing a market window • RISK of over-testing, ineffective testing  use RISK to determine: • what to test first • what to test most • how thoroughly to test each item • What not to test (this time)  use RISK to: • Allocate the time available for testing by prioritising testing ... Tester Training Course 2011
  • 39. When can we meet our test objectives? Testing principle Early testing Testing activities should start as early as possible in the software or system development life cycle and should be focused on defined objectives. Tester Training Course 2011
  • 41. Is the software defect free? Testing principle Testing shows 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 but, even if no defects are found, it is not a proof of correctness. Tester Training Course 2011
  • 42. How are defects distributed? Testing principle Defect clustering A small number of modules contain most of the defects discovered during pre-release testing or show the most operational failures. Tester Training Course 2011
  • 43. The defect clusters change over time Testing principle 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 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. Tester Training Course 2011
  • 45. Testing principle Absence-of-errors fallacy Finding and fixing defects does not help if the system built is unusable and does not fulfill the users' needs and expectations. Tester Training Course 2011
  • 46. 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. Tester Training Course 2011
  • 47. 1 2 3 4 5 6 7 Tester Training Course 2011
  • 48. Question Which statement is most true? Different testing is needed depending upon the application. All software is tested in the same way. A technique that finds defects will always find defects. A technique that has found no defects is not useful. Tester Training Course 2011
  • 49. Question When is testing complete? When time and budget are exhaused. When there is enough information for sponsors to make an informed decision about release. When there are no remaining high priority defects outstanding. When every data combination has been exercised successfully. Tester Training Course 2011
  • 50. • Why testing is necessary? • Failure, Fault, Bug, Defect, Error, Mistake • What is testing? • 7 general testing principles • Testing and Reliability • Testing and Quality • Testing and Debugging Tester Training Course 2011