26
mai 15

Testes automatizados – Parte 1: Tipos de teste

Testes automatizados – Parte 1: Tipos de teste

Na última semana apresentamos aqui na Soft para alguns convidados uma introdução aos testes automatizados de software. Para quem ficou curioso, teremos uma série de posts com o conteúdo da apresentação!

Para entender o contexto dos testes automatizado, primeiro é importante entender a diferença entre tipos de teste.

testes-tipos

Pelo tipo, podemos classificar os testes em:

  • Testes de funcionalidade: Verifica se determinada funcionalidade tem o comportamento esperado. Um exemplo é um teste que tenta gerar a segunda via do boleto. O testador clica no botão de segunda via e verifica se o sistema gerou o arquivo corretamente.
  • Testes de usabilidade: Verifica características não-funcionais de usabilidade. É mais usado para compreender e melhorar a interação do usuário com o software, do que para ‘encontrar erros’. Valida questões como: Satisfação subjetiva dos usuários com o sistema e Facilidade de aprendizado para uso do sistema.
  • Testes de segurança: Avalia as vulnerabilidades do software para determinados tipos de ataques.
  • Testes de performance ou desempenho:  Avalia se o sistema atende requisitos de tempo de resposta, tempo para entrar em funcionamento e volume de uso.

Pela técnica empregada, podemos classificar em:

  • Teste funcional: black box, olha por fora mas não se importa com a estrutura interna. Tem por objetivo garantir que os requisitos e as especificações do sistema tenham sido corretamente implementados.
  • Teste estrutural: White box, olha por dentro, tentando garantir que a estrutura esteja correta. Tem como foco  averiguar o comportamento do sistema em determinadas situações garantindo que o software funcione no contexto técnico onde serão instalados.

Pelo nível em que o teste ocorre, podemos separar em:

  • Teste de unidade: Verifica uma unidade (a menor parte do software) para garantir que tem o comportamento esperado. Neste tipo de teste, a unidade é testada de forma isolada, sem considerar nenhuma dependência ou integração. Geralmente significa invocar um método passando determinadas entradas e então validar se a saída está correta.
  • Teste de integração: Verifica que uma unidade tem o comportamento esperado quanto funciona integrada com as partes das quais depende. Pode verificar a integração entre uma classe e o banco de dados, entre um módulo e um web service, etc.
  • Teste de sistema: Verifica se o sistema como um todo tem o comportamento esperado. Esse tipo de teste não está interessado nas partes e no comportamento individual das unidades, mas sim no resultado do todo. É um tipo de teste ‘black box’.
  • Teste de aceitação: É o mesmo que o teste de sistema, mas geralmente mais superficial, se preocupa em dizer se o sistema atende os requisitos mínimos para ser aceito, olhando o todo de forma ‘black box’.

 

william.jablonski
william.jablonski

Especialista em Qualidade e Testes, atua com automação de teste, integração contínua, feedback contínuo e métodos ágeis para desenvolvimento de software.

Conteúdos relacionados

  1. […] Parte 1: Tipos de teste […]

Deixe uma resposta