Download Link for your Favorite E-Book is at the End of this Page
Comparison among Black Box Testing and White Box Testing Techniques
Let us firstly see as to what are the meanings of the terms like ” Black Box” or “White Box”
What is Black Box Testing:
The term “Black Box” refers to the software, which is treated as a Black Box. By treating it as a Black Box, we mean that the system or source code is not checked at all. It is done from the customer�s viewpoint. The test engineer engaged in Black Box testing only knows the set of inputs & expected outputs & is unaware of how those inputs are transformed into outputs by the software.
What is White Box Testing:
box testing is a way of testing the external functionality of the code by examining and testing the program code that realizes the external functionality. It is a methodology to design the test cases that uses the control structure of the application to design test cases. White box testing is used to test the program code, code structure and the internal design flow
Broad Comparison among the two Prime testing techniques i.e. Black Box Testing & White Box Testing are as under
|Black Box Testing or Functional Testing||White Box Testing or Glass Box Testing or Structural Testing|
|1||This method focus on functional requirements of the software, i.e., it enables the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program.||This method focuses on procedural details i.e., internal logic of a program.|
|2||It is Not an alternative approach to white box technique rather is complementary approach that is likely to uncover a different class of errors.||It concentrates on internal logic, mainly.|
|3||Black box testing is applied during later stages of testing.||Whereas, white box testing is performed early in the testing process.|
|4||It attempts to find errors in following categories :
a) Incorrect or missing functions
b) Interface errors
c) Errors in data structures or external database access
d) Performance errors
e) Initialization and termination errors.
Whereas, white box testing attempts errors in following cases
a) Internal logic of your program.
b) Status of program.
5 It disregards control structure of procedural design (i.e., what is the control structure of our program, we do not consider here).It uses control structure of the procedural design to derive test cases.
6 Black box testing, broadens our focus, on the information domain and might be called as “testing in the large’ i.e., testing bigger monolithic programs.White box testing, as described by Hetzel is “testing in small” i.e., testing small program components (e.g., modules or small group of modules).
7 Using black box testing techniques, we derive a set of test cases that satisfy following criteria
a) Test cases that reduce, (by a count that is greater than 1), the number of additional test cases that must be designed to achieve reasonable testing.
b) Test cases that tell us something about the presence or absence of classes of errors rather than an error associated only with the specific tests at hand.
Using white box testing, the software engineer can desire test cases that
a) Guarantee that all independent paths within a module have been exercised at least once.
b) Exercise all logical decisions on their true and false sides.
c) Execute all loops at their boundaries and within their operational bounds.
d) And exercise internal data structures to ensure their validity.
8 It includes the tests that are conducted at the software interface.
A close examination of procedural detail is done.
9 Are used to uncover errors.Logical paths through the software are tested by providing test cases that exercise specific sets of conditions or loops.
10 To demonstrate that software functions are operational i.e., input is properly accepted and output is correctly produced. Also, the integrity of external information (e.g. database) is maintained.A limited set of logical paths be however examined.
DownLoad Link To Your Favorite EBook: