Black Box Testing
This is the test case selection that is based on an analysis of the specification of the component without reference
to its internal workings. BS7925
What is black box testing?
Testing concerned with WHAT the system does, not HOW it does it
Testing that looks at the functional capabilities of the system
Also known as FUNCTIONAL testing
The term “ black box “ is used to denote that we are not aware of the internal construction of the test
item – it could just be a black box. What is important is that the tests are based on WHAT the system should do. The
testing is derived from documentation such as User Requirements and Functional Specifications.
This type of testing is used for testing the functionality of a system, which is why it is also known as functional
testing.
If we look at a calculator as an example, we know that if you enter 3 + 4 the answer should be 7. We know what we are
entering and we know what the result should be but we are not concerned with HOW the calculator does it.
Black Box Test Techniques
·
Equivalence Partitioning
·
Boundary Value Analysis
·
Cause Effect Graphing
·
State Transition Testing
·
Syntax Testing
·
Random Testing
Uses
of Black Box Test Techniques
·
System Testing
·
Integration Testing in the Large
·
User Acceptance Testing
·
To assists in the business verification, validation
and testing of the application
White Box Testing
This is the test case selection that is based on an analysis of the internal structure of the component. BS7925
What is White box testing?
Testing primarily concerned with HOW a particular piece of code works
Testing that assesses the code coverage gained by running tests
Also known as STRUTURAL or GLASS box testing because you are looking at the internal structure of the program.
White box testing is analysing HOW the code works. Whilst also concerned with WHAT the program does the main focus
is on testing the precise construction details of the program design.
White box testing is primarily concerned with the way in which a program exercises its logic.
By performing white box testing we can judge if all of the program code is being exercised and if this execution is
being performed in the most efficient manner.
Using the same example of a calculator, we would now be concerned with exactly HOW the results were achieved.
Programs are constructed with various decision points like “if this statement is true then do this, else do something
else “.
White testing is used to test paths through the program code and to ensure
that there are no sections in the program that can’t be reached.
White Box Test Techniques
·
Statement Testing
·
Branch/Decision Testing
·
Branch condition Testing
·
Branch Condition Combination Testing
·
Modified Condition Decision Testing
·
Data Flow Testing
·
Linear Code Sequence and Jump Testing
Uses of White Box Test Techniques
·
Component Testing
·
Integration Testing in the Small
·
To assist in the technical verification,
validation and testing of the code