This week's book giveaway is in the Jobs Discussion forum.
We're giving away four copies of Java Interview Guide and have Anthony DePalma on-line!
See this thread for details.
The moose likes Testing and the fly likes Black and white Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Engineering » Testing
Bookmark "Black and white" Watch "Black and white" New topic

Black and white

vasu maj
Ranch Hand

Joined: Jul 12, 2001
Posts: 396
I keep hearing about black box testing and white box testing. Can somebody explain what these are and the difference between them?

What a wonderful world!
Graham Thorpe
Ranch Hand

Joined: Mar 25, 2002
Posts: 265
Black-box testing ensures that methods in your class function properly and follow the specification.
White-box (construction) testing validates that unexpected inputs to a class will not cause the program to crash
Ilja Preuss

Joined: Jul 11, 2001
Posts: 14112
Black box testing is seeing the system under test as a "black box" - that is, you only know input and output, but not what happens inside the box. With other words, the tests don't know or assume anything about the internals of the system - specifically, they don't have access to anything inside the box.
The advantage of black box testing is that the tests remain totally valid when you change the implementation of "the box".
White box testing is exactly the opposite: testing by using knowledge about the implementation or even accessing the innards of the "box".
The advantages of white box testing are that sometimes it is *much* easier to test something by knowing about its innards, and that some of the more interesting test cases (like boundary conditions) often heavily depend on the implementation details (the critical test cases for merge sort would probably look rather different from those for quick sort, for example).
[ January 17, 2003: Message edited by: Ilja Preuss ]

The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
daisy andersson

Joined: Jan 20, 2003
Posts: 1
I'm new at this and my english isnt as good as it should be.... =)
I'm also interested in whitebox (glassbox) and blackbox testing, my question is: is there any one who knows some good literature or links in this subject??
Scott Glaser

Joined: Jan 20, 2003
Posts: 10
Black Box Testing is testing without knowing how the internal workings operate. For example, you test a function by providing the inputs (arguments) and reading the outputs (exceptions, return value).
White Box Testing is testing while knowing how the internal worksings operate. For example, you test the internals of a function by testing the conditions, branches, and statements of the code.
Reference books:
Black-Box Tesing by Boris Beizer
Testing Computer Software by Cem Kaner
Graham Thorpe
Ranch Hand

Joined: Mar 25, 2002
Posts: 265
If u want real time whtiebox and whitebox go and select jtest and u can download free evalution also.but u must and should request license from parasoft
I agree. Here's the link:
subject: Black and white
It's not a secret anymore!