Tarefa: Implementar os Testes de Desenvolvedor |
| |
 |
Implementar um ou mais testes que permitam a validação dos componentes individuais de software através da execução. |
Disciplinas: Desenvolvimento |
|
Objetivo
Prepare para validar um componente de software (por exemplo, uma operação, uma classe, uma stored procedure) através do teste de unidade. O resultado será um ou mais testes de desenvolvedor novos. |
Relacionamentos
Papéis | Executor Principal:
| Executores Adicionais:
|
Entradas | Obrigatório:
| Opcional:
|
Saídas |
|
Descrição Principal
O teste de desenvolvedor é diferente de outras formas de teste porque ele está baseado no comportamento esperado das unidades de código ao invés de estar diretamente baseado nos requisitos do sistema.
É melhor fazer este teste em pequena escala, muito menor do que todo código escrito por um desenvolvedor no curso de uma iteração. Isto pode ser feito para uma operação, um campo adicionado a uma interface de usuário, uma stored procedure, etc. À medida que o código for construído incrementalmente, novos testes serão escritos e os testes existentes revisados para testar comportamentos adicionais. |
Passos
Refine o escopo e identifique os testes
Selecione o incremento de trabalho a ser testado e identifique os testes de desenvolvedor necessários para verificar que a Implementação que está sendo desenvolvida se comporte corretamente. Uma boa fonte para identificar o comportamento esperado de um componente de software é o Design.
Na identificação dos testes ou em qualquer outra parte desta tarefa, considere a colaboração de um Testador que seja bem versado nas questões de teste. |
Escreva a instanciação do teste
Para executar um teste com sucesso o sistema deve estar em um estado conhecido de modo que o comportamento correto possa ser definido. Implemente a lógica de instanciação que deva ser executada como parte do Teste de Desenvolvedor. |
Defina os resultados esperados
Defina os resultados esperados de cada teste de modo que eles possam ser verificados.
Depois da execução de um teste, é necessário comparar os resultados da sua execução com o que se esperava que acontecesse. O teste será bem sucedido quando os resultados reais combinarem com os resultados previstos. |
Escreva a lógica do teste
Escreva as etapas de execução dos testes. |
Defina a resposta do teste
Defina as informações que os testes devem produzir para indicar se houve sucesso ou falha. Considere se uma resposta do tipo Verdadeiro ou Falso é suficiente, ou se uma mensagem detalhada deva também ser registrada. |
Escreva o código para limpeza
Identifique e implemente os passos necessários para restaurar o ambiente de teste ao estado inicial antes do início de cada teste. O objetivo é assegurar que não haja nenhum efeito colateral quando da execução dos testes. |
Teste o teste
Verifique que cada teste de desenvolvedor funcione corretamente. Para isto:
- Execute os testes, observe seu comportamento e concerte qualquer erro encontrado nos testes.
- Assegure-se de que os resultados previstos estejam definidos corretamente e que estejam sendo verificados corretamente.
- Verifique a lógica do código de limpeza para cada teste.
- Assegure-se que cada teste de desenvolvedor funcione no seu framework de suíte de teste.
|
|
Principais Considerações
- Automatize os testes através de uma ferramenta de teste de regressão unitário (por exemplo, xUnit) de modo que os testes possam ser executados pelos desenvolvedores sempre que eles fizerem mudanças no código.
- Teste o risco do componente. Por exemplo, quão mais crítico for um componente, mais importante será testá-lo completamente.
- Junte-se ao Testador em todas as etapas desta tarefa para melhorar os processos de teste e de qualidade.
|
Alternativas
Confie nos testes de aceitação para validar o software. Esta alternativa provavelmente consumirá mais tempo e não será tão eficaz quanto o teste de desenvolvedor na identificação de erros e na sua localização no código. |
Informações Adicionais
|