Teste de software
Teste de Caixa-Branca
Também conhecido como teste estrutural. É aquele em que o analista tem total acesso à estrutura interna da entidade sendo analisada e permite, por exemplo, que o analista escolha partes específicas de um componente para serem testadas.
O fato de conhecer o código do programa permite que o avaliador projete testes mais precisos. Por exemplo, se a definição de uma função g(), para um determinado programa, afirma que ela não aceita valores negativos, um avaliador poderia provocar uma chamada fun(-1) e descobrir que um tratamento de exceções não está corretamente implementado.
Esses testes são projetados em função da estrutura do componente e podem permitir verificação mais precisa de comportamento do produto. Ele permite ao avaliador concentrar a atenção nos pontos mais importantes ou “perigosos” do código, de uma maneira mais precisa do que no caso do teste caixa-preta. Tais pontos podem até ser identificados durante o desenvolvimento e cobertos com o uso de assertivas e testes.
Teste de Caixa-Preta
O Teste de Caixa-Preta ou Teste Funcional, também é usado na engenharia, no problema de identificação de sistemas, e advém do fato de que ao analisar o comportamento de um objeto, ignora-se totalmente sua construção interna.
Nesse tipo de teste, uma determinada função g() que não aceita valores negativos, mas não possui tratamento adequado de exceção, poderia ser testada para cem mil valores diferentes no intervalo [0...106], sem que fosse detectado algum defeito.
O teste de caixa-preta é baseado nos requisitos funcionais do software. Como não há conhecimento sobre a operação interna do programa, o avaliador se concentra nas funções que o software deve desempenhar. A partir da especificação são determinadas as saídas esperadas para certos conjuntos de entrada de dados.
Teste de Integração
Quando todos os componentes de um software foram testados, surge uma pergunta: quando estiverem integrados,