Há um teste de software que possui as seguintes características: (1) procura visualizar, apenas, os dados de entrada fornecidos e as respostas produzidas como saída pelo software; (2) são verificadas as funções do sistema sem se preocupar com os detalhes internos de implementação; e (3) envolve, basicamente, dois passos principais: identificar as funções que o software deve realizar e criar casos de teste capazes de checar se essas funções estão sendo realizadas pelo software. Nesse caso, esse tipo de teste de software é chamado de: