-
Testes Funcionais (Caixa-preta) - Os testes funcionais também são conhecidos como "teste caixa-preta", pelo fato do testador não precisar conhecer os detalhes da codificação. Nesse tipo de teste o testador informa os dados de entrada e verifica se a saída/resultado está de acordo com o que era esperado.
-
Teste Caixa PRETA | visam verificar a funcionalidade e a aderência aos requisitos, em uma ótica externa ou do usuário, sem se basear em qualquer conhecimento do código e da lógica interna do componente testado. |
Teste Caixa Branca (caixa de vidro) | visam avaliar as cláusulas de código, a lógica interna do componente codificado, as configurações e outros elementos técnicos. |
Caixa preta -> funcionalidades/requisitos
Caixa branca -> código/componentes
-
Complementando o que os colegas mencionaram:
Quando o objetivo é testar uma funcionalidade, assegurando-se que, para todo tipo de entrada, a saída observada corresponda àquela esperada, pode-se alcançar esse objetivo fazendo-se uso de testes do tipo caixa-branca.
1) A melhor aceitação para validar as entradas é especificar um domínio de entradas para o teste;
2) Teste caixa-preta utiliza da melhor forma esse domínio de entradas (boa prática);
3) Caixa-Branca é realizado com mais baixo nível (código fonte)
A questão misturou teste caixa-branca com caixa-preta.
-
Li a questão e na hora pensei... OK, isso é teste de caixa preta, mas se tratando de CESPE fiquei com um pé atras na parte em que diz "(...) pode-se alcançar esse objetivo fazendo-se uso de testes do tipo caixa-branca.". Claro que o teste de caixa preta é recomendado para a questão, mas teria algum impedimento de eu fazer isso com um teste de caixa branca, mesmo sabendo que não é a finalidade dele? O que vocês acham? []s
-
Em um teste caixa-preta, segundo Sommerville:
"O Testador fornece as entradas para o componente ou sistema e examina as saídas correspondentes. Se as saídas não forem as previstas o teste detectou um problema com o software. No teste caixa-preta, o comportamento pode ser somente determinado por meio de suas entradas e saídas relacionadas".
Fonte: Engenharia de Software, pag. 359, cap. 23, 8ª Edição. Ian Sommerville. Editora Pearson Adison Wesley.
-
Acho que não poderíamos testar a funcionalidade utilizando o teste da caixa, muito menos assegurar a relação entrada e saída, pois ele testa a estrutura do programa.
Segundo Pressam:
"O teste caixa-branca, também chamado de teste da caixa-de-vidro, é uma filosofia de projeto de casos de teste que usa a estrutura de controle descrita como parte do projeto no nível de componentes para derivar casos de teste. Usando métodos de teste caixa-branca, o engenheiro de
software pode criar casos de teste que (1) garantam que todos os caminhos independentes de um
módulo foram exercitados pelo menos uma vez, (2) exercitam todas as decisões lógicas nos seus
estados verdadeiro e falso, (3) executam todos os ciclos em seus limites e dentro de suas fronteiras
operacionais, e (4) exercitam estruturas de dados internas para assegurar a sua validade."
-
Falta de recurso. Mais uma do estagiário.
-
Corrigindo o enunciado da questão...
Quando o objetivo é testar uma funcionalidade, assegurando-se que, para
todo tipo de entrada, a saída observada corresponda àquela esperada,
pode-se alcançar esse objetivo fazendo-se uso de testes caixa-preta.
Ps.: Caixa-preta, caixa-branca ou caixa-cinza NÃO são tipos de teste, mas sim técnicas de testes!
Bons estudos!