Em engenharia de software, caso de teste é um conjunto de condições usadas para teste de software. Ele pode ser elaborado para identificar defeitos na estrutura interna do software por meio de situações que exercitem adequadamente todas as estruturas utilizadas na codificação; ou ainda, garantir que os requisitos do software que foi construído sejam plenamente atendidos. Podemos utilizar a ferramenta de casos de uso para criar e rastrear um caso de teste, facilitando assim identificação de possíveis falhas.

O caso de teste deve especificar os valores de entrada e os resultados esperados do processamento.[1] Numa situação ideal, no desenvolvimento de casos de teste, se espera encontrar o subconjunto dos casos de teste possíveis com a maior probabilidade de encontrar a maioria dos erros.[2]

Estrutura

editar
Seção Descrição
Resumo Contém uma descrição do caso de teste, descrevendo a finalidade ou o objetivo do teste e o escopo.
Pré-condições Para cada condição de execução, descreve o estado obrigatório do sistema antes do início do teste.
Entradas Para cada condição de execução, enumera uma lista dos estímulos específicos a serem aplicados durante o teste. Em geral, eles são denominados entradas do teste e incluem os objetos ou os campos de interação e os valores de dados específicos inseridos durante a execução deste caso de teste.
Ação Para a execução do teste, são as ações que o usuário deve fazer para que o sistema possa cumprir com o que será testado.
Resultados esperados É o estado resultante ou as condições observáveis esperadas como resultado da execução do teste. Observe que isso pode incluir respostas positivas e negativas (como condições de erro e falhas).
Pós-condições Para cada condição de execução, descreve o estado ao qual o sistema deverá retornar para permitir a execução de testes subsequentes.

Referências

  1. MYERS, 2004, p. 14
  2. MYERS, 2004, p. 43

Bibliografia

editar
  • MYERS, Glenford J. John Wiley & Sons, ed. The Art of Software Testing. 2004 2 ed. Nova Jérsei: [s.n.] ISBN 0-471-46912-2 
  Este artigo sobre software é um esboço. Você pode ajudar a Wikipédia expandindo-o.