A software testing method in which the internal structure/design/implementation of the item being tested is not known to the tester.
- Mostly done by software testers
- It is functional test of the software
- No knowledge of programming is required
- It is the behaviour testing of the software
- Can be done by trial and error ways and methods