SlideShare une entreprise Scribd logo
1  sur  33
Prepared by :
1.Mohammed Siddig Ahmed.
2.Mohammed Zeinelabdeen.
3.Omer Salih Dawood.
Testing Overview and Black-Box
Testing Techniques
 Introduction to Testing.
 Verification and validation.
 Black-box testing & White-box testing.
 Types of testing that involve both
  black- and white-box techniques.
 Strategies for writing test cases.
 Using a template for writing
  repeatable, defined test cases.

                                           3
   Software testing is the process of
    analyzing a software item to detect the
    differences between existing and required
    conditions (that is, bugs) and to evaluate
    the features of the software item.




                                                 4
   Verification is the process of evaluating a system or
    component to determine whether the products of a
    given development phase satisfy the conditions
    imposed at the start of that phase.
   Validation is the process of evaluating a system or
    component during or at the end of the development
    process to determine whether it satisfies specified
    requirements.
   Verification: Are we building the product right?

   Validation : Are we building the right product?

                                                            5
 Standard or specification to measure or
 identify correct results from incorrect
 results must define some terms:
    • Mistake .
    • Fault [or Defect] .
    • Failure .
    • Error .
    • Specification.
                                            6
 In software development, there are costs
  associated with testing our programs.
 Quality is much more important for
  safety- or mission critical software e.g.
  aviation software.
 Goal of testing covering many defects as
  possible with a little testing.

                                              7
   There are two basic classes of software testing
    definitions below:
        • Black box testing (also called functional
          testing) is testing that ignores the internal
          mechanism of a system or component and
          focuses solely on the outputs generated in
          response to selected inputs and execution
          conditions.
        • White box testing (also called structural
          testing and glass box testing) is testing that
          takes into account the internal mechanism of a
          system or component.

                                                       8
1. Unit Testing
 Opacity: White box testing.
 Specification: Low-level design and/or code structure.
 (Unit testing is the testing of individual hardware or software
   units or groups of related units).
2. Integration testing
  Opacity: Black- and white-box testing.
  Specification: Low- and high-level design.
  (Integration test is testing in which software components,
    hardware components, or both are combined and tested to
    evaluate the interaction between them).

                                                                   9
3. Functional and system testing
  Opacity: Black-box testing
   Specification: high-level design, requirements specification.
  ( Functional testing involves ensuring that the functionality
    specified in the requirement specification works,& System
    testing is testing conducted on a complete, integrated system
    to evaluate the system compliance with its specified
    requirements).
       • Stress testing
       • Performance testing
       • Usability testing
                                                               10
4. Acceptance testing
 Opacity: Black-box testing
  Specification: requirements specification.
 (Acceptance testing is formal testing conducted to
    determine whether or not a system satisfies its
    acceptance criteria (the criteria the system must satisfy
    to be accepted by a customer) and to enable the
    customer to determine whether or not to accept the
    system).



                                                           11
5. Regression testing
 Opacity: Black- and white-box testing
 Specification: Any changed documentation, high-level
   design
 (Regression testing is selective retesting of a
   system or component to verify that
   modifications have not caused unintended
   effects and that the system or component still
   complies with its specified Requirements).
  –    A subset of the regression test cases can be set aside
      as smoke tests.


                                                                12
6. Beta testing
    Opacity: Black-box testing.
    Specification: None.
      The advantages of beta test:
         •   Identification of unexpected errors
         •   A wider population search for errors
         •   Low costs
      The disadvantages
         •   Lack of systematic testing
         •   Low quality error reports
         •   Much effort is necessary to examine error reports
                                                                 13
14
   ( Document describing the scope, approach, resources,
    and schedule of intended test activities. It identifies
    test items, the features to be tested, the testing tasks,
    who will do each task, and any risks requiring
    contingency plans).
   Test case ( set of test inputs, execution
    conditions, and expected results developed for
    a particular objective, such as to exercise a
    particular program path or to verify compliance
    with a specific requirement).

                                                            15
   The earlier testing is planned at all levels, the better.
   Very important to consider test planning and test
    execution as iterative processes.
   It is best to begin to write functional and system test
    cases.
   When requirements change, revise the test cases.
   When code changes, run the test cases again.
   All in all, testing should be considered an iterative and
    essential part of the entire development process.

                                                            16
   Called :
    – functional testing
    – behavioral testing
   focuses on:
    – whether or not a program does what it is
      supposed to do based on its functional
      requirements.



                                                 17
1.   incorrect or missing functionality.
2.   interface errors .
3.    errors in data structures used by
     interfaces.
4.   behavior or performance errors.
5.   initialization and termination errors.

But: no amount of testing can
  demonstrate the absence of errors.
                                              18
 blackbox tester is not the programmer of
 the code (it is best).
 Programmer:
    – If the program does what they programmed
      it to do?.
   Needed:
    – If The program does what the customer
      wants it to do?.


                                              19
   Focus on input and output of the
    software without regard to the internal
    code of the program




                                              20
1.   test case a unique identifier.
2.   describe the set of steps and/or input for
     the particular condition.
3.   the expected results for an input/output
     oracle.
4.   the actual results.



                                              21
22
   Why test Strategies?:-
    – test every possible thing (Cost).
    – find many defects in few test cases .
    – avoid writing redundant test cases.
    – design the simplest test cases .




                                              23
1.   Tests of Customer Requirements.
2.   Equivalence Partitioning.
3.   Boundary Value Analysis.
4.   Decision Table Testing.
5.   Failure (“Dirty”) Test Cases.




                                       24
 Black box test cases are based on
  customer requirements
 Have two paths:
    – success path.
    – failure path.
   risky requirements should tested first.




                                              25
  don’t want to write several test cases
  that test the same aspect of our
  program(cost).
 A good test case uncovers a different
  class of errors.
 Equivalence partitioning is used to
  reduce the number of test cases t.
 divides the input of a program into
  classes

                                            26
   For each of these classes :-
    – the set of data should be treated the same
      by the module under test .
    – And should produce the same answer.




                                                   27
 “ Bugs lurk in corners and
  congregate at boundaries ”
                            Boris Beizer
 need to focus testing at the boundaries.
 Boundary value:-
    – a data value that corresponds to a minimum
      or maximum input, internal, or output value
      specified for a system or component.


                                                28
   When creating BVA test cases, consider
    the following :
    – If input conditions have a range from a to b
      (such as a=100 to b=300), create test cases:
    – immediately below a (99)
    – at a (100)
    – immediately above a (101)
    – immediately below b (299)
    – at b (300)
    – immediately above b (301)

                                                     29
   If input conditions specify a number of
    values that are allowed, test these limits.




                                                  30
   record complex business rules that must be
    implemented in the program, and therefore
    tested.
   conditions represent possible input.
   actions are the events that should trigger.
   Each column in the table is a unique
    combination of input conditions that result
    in triggering the action(s) associated with
    the rule.

                                              31
32
   every possible thing a user could possibly
    do with your system to demolish the
    software.




                                             33

Contenu connexe

Tendances

Object Oriented Testing
Object Oriented TestingObject Oriented Testing
Object Oriented TestingAMITJain879
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testingHadi Fadlallah
 
5 black box and grey box testing
5   black box and grey box testing5   black box and grey box testing
5 black box and grey box testingYisal Khan
 
Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Mani Kanth
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategiesSHREEHARI WADAWADAGI
 
Integration testing
Integration testingIntegration testing
Integration testingqueen jemila
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101QA Hannah
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing IntroductionArunKumar5524
 
INTEGRATION TESTING
INTEGRATION TESTINGINTEGRATION TESTING
INTEGRATION TESTINGRohitK71
 
Software Testing Principles
Software Testing PrinciplesSoftware Testing Principles
Software Testing PrinciplesKanoah
 
Software review
Software reviewSoftware review
Software reviewamjad_09
 
Test case techniques
Test case techniquesTest case techniques
Test case techniquesPina Parmar
 

Tendances (20)

Object Oriented Testing
Object Oriented TestingObject Oriented Testing
Object Oriented Testing
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
5 black box and grey box testing
5   black box and grey box testing5   black box and grey box testing
5 black box and grey box testing
 
Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software Testing 101
Software Testing 101Software Testing 101
Software Testing 101
 
Testing
TestingTesting
Testing
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
White Box Testing
White Box Testing White Box Testing
White Box Testing
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
 
White box ppt
White box pptWhite box ppt
White box ppt
 
Black box and white box testing
Black box and white box testingBlack box and white box testing
Black box and white box testing
 
INTEGRATION TESTING
INTEGRATION TESTINGINTEGRATION TESTING
INTEGRATION TESTING
 
Software Testing Principles
Software Testing PrinciplesSoftware Testing Principles
Software Testing Principles
 
Software review
Software reviewSoftware review
Software review
 
Test case techniques
Test case techniquesTest case techniques
Test case techniques
 

En vedette

Whitebox testing
Whitebox testingWhitebox testing
Whitebox testingOana Feidi
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniquesFincy V.J
 
Boundary and equivalnce systematic test design
Boundary and equivalnce   systematic test designBoundary and equivalnce   systematic test design
Boundary and equivalnce systematic test designIan McDonald
 
Equivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysisEquivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysisniharika5412
 
Boundary value analysis
Boundary value analysisBoundary value analysis
Boundary value analysisVadym Muliavka
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software TestingNishant Worah
 

En vedette (7)

Whitebox testing
Whitebox testingWhitebox testing
Whitebox testing
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniques
 
Boundary and equivalnce systematic test design
Boundary and equivalnce   systematic test designBoundary and equivalnce   systematic test design
Boundary and equivalnce systematic test design
 
Equivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysisEquivalence partinioning and boundary value analysis
Equivalence partinioning and boundary value analysis
 
Boundary value analysis
Boundary value analysisBoundary value analysis
Boundary value analysis
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 

Similaire à Black-Box Testing Techniques Overview

Similaire à Black-Box Testing Techniques Overview (20)

Testing
TestingTesting
Testing
 
software testing types jxnvlbnLCBNFVjnl/fknblb
software testing types jxnvlbnLCBNFVjnl/fknblbsoftware testing types jxnvlbnLCBNFVjnl/fknblb
software testing types jxnvlbnLCBNFVjnl/fknblb
 
Blackbox
BlackboxBlackbox
Blackbox
 
Different Types Of Testing
Different Types Of TestingDifferent Types Of Testing
Different Types Of Testing
 
software testing
software testingsoftware testing
software testing
 
System Testing.pptx
System Testing.pptxSystem Testing.pptx
System Testing.pptx
 
Testing ppt
Testing pptTesting ppt
Testing ppt
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdf
 
unittesting-190620114546 (1).pptx document
unittesting-190620114546 (1).pptx documentunittesting-190620114546 (1).pptx document
unittesting-190620114546 (1).pptx document
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Test Levels & Techniques
Test Levels & TechniquesTest Levels & Techniques
Test Levels & Techniques
 
software testing technique
software testing techniquesoftware testing technique
software testing technique
 
Block 1 ms-034 unit-1
Block 1 ms-034 unit-1Block 1 ms-034 unit-1
Block 1 ms-034 unit-1
 
Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategies
 
CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4CS8494 SOFTWARE ENGINEERING Unit-4
CS8494 SOFTWARE ENGINEERING Unit-4
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
 
softwaretesting-140721025833-phpapp02.pdf
softwaretesting-140721025833-phpapp02.pdfsoftwaretesting-140721025833-phpapp02.pdf
softwaretesting-140721025833-phpapp02.pdf
 
lec-11 Testing.ppt
lec-11 Testing.pptlec-11 Testing.ppt
lec-11 Testing.ppt
 
Software testing
Software testingSoftware testing
Software testing
 
Lecture (Software Testing).pptx
Lecture (Software Testing).pptxLecture (Software Testing).pptx
Lecture (Software Testing).pptx
 

Plus de Mohamed Zeinelabdeen Abdelgader Farh jber

الآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقيا
الآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقياالآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقيا
الآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقياMohamed Zeinelabdeen Abdelgader Farh jber
 
Comparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and jogetComparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and jogetMohamed Zeinelabdeen Abdelgader Farh jber
 
Comparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and jogetComparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and jogetMohamed Zeinelabdeen Abdelgader Farh jber
 

Plus de Mohamed Zeinelabdeen Abdelgader Farh jber (13)

الآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقيا
الآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقياالآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقيا
الآثار الأخلاقية المترتبة على الملكية الفكرية في أفريقيا
 
موزع البريد الرقمي
موزع البريد الرقمي موزع البريد الرقمي
موزع البريد الرقمي
 
Comparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and jogetComparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and joget
 
Comparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and jogetComparison of the workflow management systems bizagi, process maker, and joget
Comparison of the workflow management systems bizagi, process maker, and joget
 
Workflow Management Systems Comparison Study
 Workflow Management Systems Comparison Study Workflow Management Systems Comparison Study
Workflow Management Systems Comparison Study
 
Transaction management transparencies
Transaction management transparenciesTransaction management transparencies
Transaction management transparencies
 
Transaction management for a main memory database
Transaction management for a main memory databaseTransaction management for a main memory database
Transaction management for a main memory database
 
Embedded systems1
Embedded systems1Embedded systems1
Embedded systems1
 
B trees
B treesB trees
B trees
 
Web servers
Web serversWeb servers
Web servers
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Online Msc Application Workflow Management System
Online Msc Application Workflow Management SystemOnline Msc Application Workflow Management System
Online Msc Application Workflow Management System
 
DISTRIBUTED DATABASE
DISTRIBUTED DATABASEDISTRIBUTED DATABASE
DISTRIBUTED DATABASE
 

Black-Box Testing Techniques Overview

  • 1. Prepared by : 1.Mohammed Siddig Ahmed. 2.Mohammed Zeinelabdeen. 3.Omer Salih Dawood.
  • 2. Testing Overview and Black-Box Testing Techniques
  • 3.  Introduction to Testing.  Verification and validation.  Black-box testing & White-box testing.  Types of testing that involve both black- and white-box techniques.  Strategies for writing test cases.  Using a template for writing repeatable, defined test cases. 3
  • 4. Software testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the features of the software item. 4
  • 5. Verification is the process of evaluating a system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase.  Validation is the process of evaluating a system or component during or at the end of the development process to determine whether it satisfies specified requirements.  Verification: Are we building the product right?  Validation : Are we building the right product? 5
  • 6.  Standard or specification to measure or identify correct results from incorrect results must define some terms: • Mistake . • Fault [or Defect] . • Failure . • Error . • Specification. 6
  • 7.  In software development, there are costs associated with testing our programs.  Quality is much more important for safety- or mission critical software e.g. aviation software.  Goal of testing covering many defects as possible with a little testing. 7
  • 8. There are two basic classes of software testing definitions below: • Black box testing (also called functional testing) is testing that ignores the internal mechanism of a system or component and focuses solely on the outputs generated in response to selected inputs and execution conditions. • White box testing (also called structural testing and glass box testing) is testing that takes into account the internal mechanism of a system or component. 8
  • 9. 1. Unit Testing Opacity: White box testing. Specification: Low-level design and/or code structure. (Unit testing is the testing of individual hardware or software units or groups of related units). 2. Integration testing Opacity: Black- and white-box testing. Specification: Low- and high-level design. (Integration test is testing in which software components, hardware components, or both are combined and tested to evaluate the interaction between them). 9
  • 10. 3. Functional and system testing Opacity: Black-box testing Specification: high-level design, requirements specification. ( Functional testing involves ensuring that the functionality specified in the requirement specification works,& System testing is testing conducted on a complete, integrated system to evaluate the system compliance with its specified requirements). • Stress testing • Performance testing • Usability testing 10
  • 11. 4. Acceptance testing Opacity: Black-box testing Specification: requirements specification. (Acceptance testing is formal testing conducted to determine whether or not a system satisfies its acceptance criteria (the criteria the system must satisfy to be accepted by a customer) and to enable the customer to determine whether or not to accept the system). 11
  • 12. 5. Regression testing Opacity: Black- and white-box testing Specification: Any changed documentation, high-level design (Regression testing is selective retesting of a system or component to verify that modifications have not caused unintended effects and that the system or component still complies with its specified Requirements). – A subset of the regression test cases can be set aside as smoke tests. 12
  • 13. 6. Beta testing Opacity: Black-box testing. Specification: None.  The advantages of beta test: • Identification of unexpected errors • A wider population search for errors • Low costs  The disadvantages • Lack of systematic testing • Low quality error reports • Much effort is necessary to examine error reports 13
  • 14. 14
  • 15. ( Document describing the scope, approach, resources, and schedule of intended test activities. It identifies test items, the features to be tested, the testing tasks, who will do each task, and any risks requiring contingency plans).  Test case ( set of test inputs, execution conditions, and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement). 15
  • 16. The earlier testing is planned at all levels, the better.  Very important to consider test planning and test execution as iterative processes.  It is best to begin to write functional and system test cases.  When requirements change, revise the test cases.  When code changes, run the test cases again.  All in all, testing should be considered an iterative and essential part of the entire development process. 16
  • 17. Called : – functional testing – behavioral testing  focuses on: – whether or not a program does what it is supposed to do based on its functional requirements. 17
  • 18. 1. incorrect or missing functionality. 2. interface errors . 3. errors in data structures used by interfaces. 4. behavior or performance errors. 5. initialization and termination errors. But: no amount of testing can demonstrate the absence of errors. 18
  • 19.  blackbox tester is not the programmer of the code (it is best).  Programmer: – If the program does what they programmed it to do?.  Needed: – If The program does what the customer wants it to do?. 19
  • 20. Focus on input and output of the software without regard to the internal code of the program 20
  • 21. 1. test case a unique identifier. 2. describe the set of steps and/or input for the particular condition. 3. the expected results for an input/output oracle. 4. the actual results. 21
  • 22. 22
  • 23. Why test Strategies?:- – test every possible thing (Cost). – find many defects in few test cases . – avoid writing redundant test cases. – design the simplest test cases . 23
  • 24. 1. Tests of Customer Requirements. 2. Equivalence Partitioning. 3. Boundary Value Analysis. 4. Decision Table Testing. 5. Failure (“Dirty”) Test Cases. 24
  • 25.  Black box test cases are based on customer requirements  Have two paths: – success path. – failure path.  risky requirements should tested first. 25
  • 26.  don’t want to write several test cases that test the same aspect of our program(cost).  A good test case uncovers a different class of errors.  Equivalence partitioning is used to reduce the number of test cases t.  divides the input of a program into classes 26
  • 27. For each of these classes :- – the set of data should be treated the same by the module under test . – And should produce the same answer. 27
  • 28.  “ Bugs lurk in corners and congregate at boundaries ” Boris Beizer  need to focus testing at the boundaries.  Boundary value:- – a data value that corresponds to a minimum or maximum input, internal, or output value specified for a system or component. 28
  • 29. When creating BVA test cases, consider the following : – If input conditions have a range from a to b (such as a=100 to b=300), create test cases: – immediately below a (99) – at a (100) – immediately above a (101) – immediately below b (299) – at b (300) – immediately above b (301) 29
  • 30. If input conditions specify a number of values that are allowed, test these limits. 30
  • 31. record complex business rules that must be implemented in the program, and therefore tested.  conditions represent possible input.  actions are the events that should trigger.  Each column in the table is a unique combination of input conditions that result in triggering the action(s) associated with the rule. 31
  • 32. 32
  • 33. every possible thing a user could possibly do with your system to demolish the software. 33