Black-box testing

Black-box testing is a testing of completed units of functional code without any knowledge of the implementation. Testers concern themselves with verifying specified input against expected output and not worrying about the logic of what goes on in between. User acceptance testing and systems testing are classic example of black-box testing.

White-box testing

White-box testing relies on analyzing the code itself and the internal logic of the software. White-box testing is often, but not always, the purview of programmers. It uses techniques which range from highly technical or technology specific testing through to things like static code analysis (FXCop in .NET), dynamic code analysis (profiling with dotTrace, ANTS profilers in .NET) and code inspections.

Although white-box techniques can be used at any stage in a software product's life cycle they tend to be found in Unit testing activities. Then Integration testing comes into the play when smaller units are integrated into larger units and larger units into the overall system. This differs from unit testing in that units are no longer tested independently but in groups, the focus shifting from the individual units to the interaction between them.

Black box testing White box testing
It is a way of software testing in which the internal structure or the program or the code is hidden and nothing is known about it. It is a way of testing the software in which the tester has knowledge about the internal structure r the code or the program of the software.
It is mostly done by software testers. It is mostly done by software developers.
No knowledge of programming is required. It is mandatory to have knowledge of programming.
It is the behavior testing of the software. It is the logic testing of the software.
It is applicable to the higher levels of testing of software. It is generally applicable to the lower levels of software testing.
Types of Black Box Testing:
◦ A. Functional Testing
◦ B. Non-functional testing
◦ C. Regression Testing | **Types of White Box Testing:**
◦ A. Path Testing
◦ B. Loop Testing
◦ C. Condition testing |

Detailed test cases

The MOST comprehensive testing checklist and practices