Teste funcional - Functional testing

O teste funcional é um processo de garantia de qualidade (QA) e um tipo de teste de caixa preta que baseia seus casos de teste nas especificações do componente de software em teste. As funções são testadas alimentando-as com entrada e examinando a saída, e a estrutura interna do programa raramente é considerada (ao contrário do teste de caixa branca ). O teste funcional é conduzido para avaliar a conformidade de um sistema ou componente com os requisitos funcionais especificados . O teste funcional geralmente descreve o que o sistema faz.

Como o teste funcional é um tipo de teste de caixa preta, a funcionalidade do software pode ser testada sem conhecer o funcionamento interno do software. Isso significa que os testadores não precisam conhecer as linguagens de programação ou como o software foi implementado. Isso, por sua vez, pode levar à redução do viés do desenvolvedor (ou viés de confirmação ) no teste, uma vez que o testador não esteve envolvido no desenvolvimento do software.

O teste funcional não implica que você está testando uma função (método) de seu módulo ou classe. O teste funcional testa uma fatia da funcionalidade de todo o sistema.

O teste funcional difere do teste de sistema no sentido de que o teste funcional " verifica um programa comparando-o com ... documento (s) ou especificação (ões) de design", enquanto o teste de sistema " valida [s] um programa comparando-o com o usuário publicado ou requisitos de sistema. "

Tipos

O teste funcional tem muitos tipos:

Seis etapas

O teste funcional normalmente envolve seis etapas

  1. A identificação das funções que se espera que o software execute
  2. A criação de dados de entrada com base nas especificações da função
  3. A determinação da produção com base nas especificações da função
  4. A execução do caso de teste
  5. A comparação dos resultados reais e esperados
  6. Verificar se o aplicativo funciona de acordo com a necessidade do cliente.

Veja também

  •  Teste não funcional - Teste de software de computador para a forma como ele opera, em vez de comportamentos ou funções específicas
  • Teste de aceitação  - Teste para determinar se os requisitos de uma especificação ou contrato são atendidos
  • Teste de regressão  - Verificar se as alterações no software interromperam a funcionalidade que costumava funcionar
  • Teste de sistema  - Teste realizado em um sistema de software integrado completo
  • Teste de software  - exame de quão eficiente e confiável o software é no desempenho de sua função pretendida
  • Teste de integração  - A fase de teste de software em que módulos de software individuais são combinados e testados como um grupo
  • Teste de unidade  - método de teste de software pelo qual unidades individuais de código-fonte são validadas
  • Teste de banco de dados  - O teste de sistemas de software de banco de dados
  • Teste de segurança  - O processo de localização de falhas na segurança dos sistemas de informação
  • Teste de carga  - Processo de colocar demanda em um sistema de software e medir sua resposta
  • Automação de teste  - Uso de software especial (separado do que está sendo testado) para controlar a execução dos testes e comparar os resultados reais com os resultados previstos

Referências