Uma abordagem simples para alguns tipos de testes. - Maximiliano Alves
undo
menu

Uma abordagem simples para alguns tipos de testes.

Algumas vezes enquanto trabalhava em mais frentes no ciclo de teste de software ficava complicado entender cada tipo de teste e onde ele se encaixava no contexto. Então, com o tempo, estudo e algumas leituras, fui criando algumas perguntas para cada tipo de teste com qual eu mais trabalhei. Segue abaixo:

 

Teste unitário

O conceito básico de teste unitário é garantir que a menor unidade do seu sistema possa ser testado, como: Funções, classes, métodos e em alguns casos até módulos.

 

Definição:

POR QUE: é a garantia de assertividade do código

QUEM: Desenvolvedores e alguns testers mais técnicos.

O QUE: Funções, classes, métodos e módulos (Menor parte testável)

QUANDO: um código novo é escrito

ONDE: Na maioria das vezes ocorrem local.

COMO: Junit, PHPUnit, Jasmine, etc.

 

Teste de API ou Serviços

É um tipo de teste para validar e avaliar os retornos de um dado serviço, pode ser ele REST ou SOAP.

 

Definição:

POR QUE: é a garantia de que os serviços estão comunicáveis e os retornos estão funcionando  

QUEM: Desenvolvedores e alguns testers mais técnicos.

O QUE: Novos serviços implementados

QUANDO: Assim que ocorrer alguma mudanças ou uma nova API for desenvolvida

ONDE: Local e em ambientes de homologação

COMO: Postman/Newman, SoapUI ou até mesmo consulta via http por alguma linguagem de programação a sua escolha.

 

Teste de Aceitação

É uma fase do processo de teste responsável por validar os requisitos do sistema e do usuário, antes de ser publicado.

Definição:

POR QUE: é a garantia de que os requisitos do sistema e a expectativa do cliente estão garantidas

QUEM: Tester Manual e Tester automação.

O QUE: Verificação de User stories, validação de campos e verificação de novos recursos

QUANDO: Quando a funcionalidade estiver finalizada e testada unitariamente.

ONDE: Ambientes de teste e homologação.

COMO: Cucumber, Protractor e Jasmine, Codeception, CodeceptionJS, etc.

 

Teste de regressão

É a fase de teste quando aplicamos uma nova versão do sistema e garantimos que não foram encontrados novos bugs.

 

Definição:

POR QUE: é a garantia que todo sistema está funcionando quando implementado novas versões de forma integrada

QUEM: Tester Manual e Tester automação, em alguns casos mais ágeis o Analista de negócio e o Product Owner.

O QUE: Fluxo do usuário, Fluxo positivo, algumas coisas de desempenho e segurança

QUANDO: Quando o teste de aceitação é concluído

COMO: Teste exploratório ou utilizando ferramentas com webdriver.

 

Para mim as maiores dificuldades foram entender o porquê e quando tinha que entrar cada tipo de teste. Então espero que possa ajudar mais pessoas que como eu, sentiram essa necessidade!