No momento, eu gosto desta declaração: "Não é importante o que você chama, mas o que faz" feito por Gojko Adzic em este artigo .
Você realmente precisa especificar com as pessoas falando sobre os testes o que você pretende testar.
Existem muitas pessoas que têm opiniões diferentes, dependendo do papel delas.
Para os testadores, uma metodologia de teste aceita na Holanda é TMap . O TMap faz a seguinte distinção.
- teste de unidade
- teste de integração de unidades
- teste do sistema
- teste de integração do sistema
- teste de aceitação (todos os tipos / níveis)
- teste de aceitação funcional
- teste de aceitação do usuário
- teste de aceitação de produção
Eles têm tipos mais específicos de testes que podem ser realizados nos testes mencionados acima. Veja esta palavra doc para uma visão geral.
A Wikipédia também tem uma boa visão geral .
O livro do programador pragmático diz:
- um teste de unidade é um teste que exercita um módulo Testes de integração
- mostram que as partes principais de um sistema funcionam bem juntas
Olhando para essas diferentes fontes e colocando algumas de minhas próprias experiências e opiniões, eu começaria fazendo distinções em três categorias
- quem faz o teste em geral
- o que é testado
-
qual é o objetivo do teste
- Teste de unidade : teste a lógica em classes por programadores para mostrar a correção do nível de código. Eles devem ser rápidos e não depender de outras partes do sistema que você não pretende testar
- Teste de aceitação funcional : teste o cenário de caso de uso em um conjunto de dados limitado (especialmente criado) feito pelo departamento de teste para mostrar que cada cenário especificado funciona conforme especificado.
- Teste de aceitação do usuário : teste cenários de casos de uso em produção, como dados feitos por representantes dos usuários para aceitá-los formalmente.
- Teste de integração : teste os caminhos de comunicação entre as diferentes partes do módulo feitas pelo departamento de teste ou pelos desenvolvedores para mostrar que todos os módulos funcionam corretamente juntos.
Minha lista acima é apenas um começo e uma sugestão, mas eu realmente penso: "Não é importante o que você chama, mas o que ela faz"
Espero que isso ajude.
26-10-2016 Edit: Recentemente, uma introdução muito legal foi feita no YouTube Testes de unidade vs. testes de integração - MPJ's Musings - FunFunFunction # 55