Os testes de software podem ser divididos em 2 grupos que têm características e focos diferentes. O conceito apresentado aqui é um conceito simples e fundamental, mas que pode perturbar a cabeça de quem é iniciante na área de testes.
Teste de caixa branca
O analista tem acesso ao código fonte, conhece a estrutura interna do produto sendo analisado e possibilita que sejam escolhidas partes específicas de um componente para serem avaliadas. Esse tipo de teste, também conhecido como teste estrutural, é projetado em função da estrutura do componente e permite uma averiguação mais precisa do comportamento dessa estrutura. Perceba que o acesso ao código facilita o isolamento de uma função ou ação, o que ajuda na análise comportamental das mesmas.
Pontos negativos
-
Custos mais altos. -
Se o código sofrer muitas alterações pode dificultar o processo de teste automatizado. -
Caso o código esteja parcialmente pronto, o teste de caixa branca poderá trazer resultados inconclusos.
Pontos positivos
-
Otimização ao encontrar bugs ocultos. -
Meticulosidade, uma vez que o teste de caixa branca tem como objetivo cobrir ao máximo o código. -
Facilidade para criar testes automatizados.
Teste de caixa preta
O analista não tem acesso ao código fonte e desconhece a estrutura interna do sistema. É também conhecido como teste funcional, pois é baseado nos requisitos funcionais do software. O foco, nesse caso, é nos requisitos da aplicação, ou seja, nas ações que ela deve desempenhar.
Para mostrar quais problemas que esse tipo de teste rastreia, podemos citar alguns exemplos:
-
Data de nascimento preenchida com data futura; -
Campos de preenchimento obrigatório que não são validados; -
Utilizar números negativos em campos tipo valor a pagar; -
Botões que não executam as ações devidas;
Enfim, todo tipo de falha funcional, ou seja, falhas que contrariam os requisitos da aplicação.
Pontos negativos
-
Não é possível testar segmentos complexos de códigos. -
Geralmente identifica os módulos defeituosos, mas não explica em detalhes se eles atendem ao requisito. -
Pode entregar resultados superestimados
Pontos positivos
-
O testador não precisa ter conhecimento técnico e funcional do sistema. -
Não é necessário criar scripts -
É possivel utilizar o Crowdtest e testar com usuários reais.
Os casos de testes podem ser projetados assim que as especificações funcionais estiverem completas.
Conclusão
Deste modo, podemos concluir que o teste de caixa branca e o teste de caixa preta são necessários para uma entrega bem sucedida. Vale ressaltar que não é possível testar 100% de uma aplicação em ambos os casos.
Tanto o teste de caixa preta quanto o teste de caixa branca são feitos para certificar que um aplicativo está funcionando conforme o esperado.
Conte com a experiência de quem realiza teste de software há mais de 18 anos, entre em contato e conheça nossos serviços.
Artigos em destaque
Tecnologia, qualidade, automação: aprenda com quem vive isso todos os dias.