-=[ Black-box Testing ]=-
Black-box testing refers to the testing of a system or component without knowledge of the internal structure. This can be as simple as performing a button click and waiting for a dialog box.
Also known as: Behavioral testing, Functional testing, Opaque-box testing, Closed-box testing
Advantages: Low cost
Disadvantages: Doesn’t find many bugs
-=[ White-box Testing ]=-
White-box testing refers to using the source code for testing the system or component. Although there are several different methods to perform white-box testing, this can be performed by using a debugger and stepping through code.
Also known as: Structural testing, Glass-box testing, Clear-box testing
Advantages: Finds a larger number of bugs
Disadvantages: Increases cost and time required for testing
-=[ Grey-box Testing ]=-
Grey-box testing tries to find a middle ground between black-box testing and white-box testing by giving testers just enough visibility into the system to perform testing. In many systems this form of testing is incorporated by performing an action and checking for the updated value in the database.
Also known as: Translucent-box testing
Advantages: Achieves a good balance between quality and cost
Disadvantages: You tell me!