The tested objects may overlap sometimes. WBT is commonly used to test not very big projects, for example small software products or units of large software products. At the same time BBT is commonly more appropriate for big software systems.
BBT considers the objects of software testing as a black-box paying attention to testing the input-output relations or external functional behavior. At the same time WBT considers the objects as a glass-box where internal execution details are obvious and tested.
In WBT software bugs related to internal executions can be monitored, leading to corresponding bugs being identified and removed. The accent is on diminishing internal defects so that there is not so big probability for bugs later on no matter what type of application environment the software is subjected to.
In BBT software bugs related to specific external functions can be monitored, leading to corresponding bugs being identified and removed. The accent is on diminishing the probabilities of encountering functional troubles by target clients.
Commonly BBT is more efficient in identifying and correcting troubles of interfaces and interactions. At the same time WBT is more efficient for troubles localized within a small unit.
Different techniques may be used to create models and generate test cases to conduct systematic BBT, and others can be used for WBT. A specific technique is a BBT one if external functions are modeled; at the same time the identical method may be a WBT one if internal executions are modeled.
BBT is generally conducted by dedicated professional software testers, and could also be conducted by third-party personnel in a setting of independent verification and validation. At the same time WBT is usually conducted by developers themselves.
Software bugs identified with the help of WBT are easier to correct than those found with the help of BBT because of the direct connection between the monitored failures and program units and execution details in WBT.
Nevertheless, WBT can miss some kinds of bugs, such as omission and design troubles, which could be identified with the help of BBT.