Testing software based on output requirements and without any knowledge of the internal structure or coding in the program. The term is also used to test a website's vulnerability without having any knowledge of the Web server infrastructure (see
penetration test). Contrast with
white box testing and
gray box testing. See
testing types and
SAGE. See also
black box.