Teste Orientado a Objetos

O teste orientado a objetos consiste em realizar seqüências de envios de mensagens. Essas sequências devem ser escolhidas de maneira a explorar o maior número possível de estados que um objeto possa assumir e as transições entre eles.

Para que esse tipo de verificação seja eficiente, é interessante reduzir ao mínimo o número de casos de teste aplicados. Considere estas duas seqüências em C++ usando a biblioteca STL:

Seqüência 1:
v.erase (v.begin() + 3);
v.insert (v.begin() + 3, 100);

Seqüência 2:
v.insert (v.begin() + 3, 100);
v.erase (v.begin() + 4);


As duas seqüências de chamadas provocam exatamente o mesmo efeito: substituir o terceiro elemento de um vetor. É possível criar inúmeros casos de teste diferentes que levam um objeto exatamente ao mesmo estado. Se não for relevante testar diferentes caminhos, isto é, as transições que provocam a mudança, é melhor utilizar um único caso de teste.

Existem ferramentas para geração de casos de teste para orientação a objetos, como JCrasher, gratuita, Jtest e JC++, da Parasoft, que evitam testes redundantes.

Veja também:

Teste de Caixa-Preta
Teste de Caixa-Branca
Testes de Estresse
Teste de Integração
Teste de Aceitação

QABI Consultoria
Compartilhar no Facebook:
Compartilhar no Linkedin:

Nenhum comentário:

Postar um comentário

Indique ou comente o post. Obrigado pela visita!