Sobes.tech
Junior

Quais métodos de teste existem e a que tipos de teste eles pertencem?

sobes.tech IA

Resposta da IA

  • Testes funcionais:

    • Testes unitários: Testes das menores partes isoladas do código (funções, métodos, classes). Realizados pelos desenvolvedores.
    • Testes de integração: Testes da interação entre módulos e componentes do sistema.
    • Testes de sistema: Testes de todo o sistema integrado para verificar conformidade com os requisitos.
    • Testes de aceitação pelo usuário (UAT - User Acceptance Testing): Testes realizados pelos utilizadores finais ou clientes para verificar conformidade com os requisitos de negócio.
    • Testes de ponta a ponta (End-to-End): Testes do fluxo completo do utilizador através do sistema, incluindo integração com sistemas externos.
    • Testes de regressão: Verificação de que alterações ou correções não afetaram a funcionalidade existente.
    • Testes de fumaça: Verificação rápida da funcionalidade crítica do sistema para confirmar que está pronto para testes mais detalhados.
    • Testes de sanidade (Sanity Testing): Verificação mais aprofundada do que os testes de fumaça, de funções-chave após pequenas alterações ou correções.
  • Testes não funcionais:

    • Desempenho:
      • Testes de carga: Verificação do comportamento do sistema sob carga esperada.
      • Testes de stress: Verificação do comportamento sob carga superior à esperada, até ao ponto de falha.
      • Testes de estabilidade (Endurance/Soak Testing): Verificação do desempenho e comportamento ao longo de um período prolongado com carga constante.
    • Segurança:
      • Testes de vulnerabilidades: Procura de vulnerabilidades conhecidas.
      • Testes de penetração: Simulação de ataques ao sistema.
      • Auditoria de segurança: Análise da arquitetura e configuração para riscos potenciais.
    • Usabilidade: Avaliação da facilidade e intuitividade da interface para os utilizadores finais.
    • Testes de compatibilidade: Verificação do funcionamento em diferentes ambientes (navegadores, sistemas operativos, dispositivos).
    • Testes de localização: Verificação da adaptação da aplicação a uma língua e região específicas.
    • Testes de internacionalização: Verificação da capacidade da aplicação de se adaptar a diferentes línguas e regiões sem alterações no código.
    • Testes de acessibilidade: Verificação de que a aplicação é acessível a pessoas com limitações.
  • Áreas e métodos relacionados:

    • Testes de interface de utilizador (UI): Verificação da interface gráfica de acordo com o design e requisitos.
    • Testes de API: Testes das interfaces de programação de aplicações.
    • Testes exploratórios: Testes não formais e improvisados, focados na descoberta de defeitos não evidentes.
    • Testes baseados em riscos: Priorização de testes com base na avaliação de riscos.
    • Testes de mutação: Alteração do código fonte para verificar a eficácia dos cenários de teste.

Estas são as categorias principais. Dependendo da metodologia de desenvolvimento (Ágil, Waterfall, etc.) e da especificidade do projeto, podem ser aplicadas abordagens e combinações diferentes desses métodos. A automação pode ser aplicada a muitos desses tipos, especialmente aos testes de regressão, fumaça, carga, API e UI.