Por que automatizar testes de software ?
Quem sou eu ?
Gabriel Garcêz
Bacharel em Sistemas de Informação
Universidade Presbiteriana Mackenzie (SP)
Analista de QA Sênior
www.gabrielgarcez.com
contato@gabrielgarcez.com
github.com/gabrielgarcez
linkedin.com/in/gabrielgarcez
Como funciona na prática ?
1- Desenvolvedor implementa a funcionalidade
Como funciona na prática ?
2- Desenvolvedor escreve os testes unitários
Como funciona na prática ?
3 - Tester começa a testar porém apenas MANUALMENTE
Como funciona na prática ?
4 – Tester finalmente começa a AUTOMAÇÃO DE TESTES
Respondendo ...
Mais Rápidos
Testes automatizados rodam mais
rápidos que testes manuais.
Confiabilidade
Testes Automatizados repetem precisamente a
mesma operação toda vez, eliminando erros
humanos.
Reusáveis
Testes Automatizados podem ser reusados
em diferentes versões do software.
Performance
Testes Automatizados podem testar como o software reage depois
de repetidas execuções várias vezes o que é útil para testes de
performance.
Verdades e Mitos
Mito #1:
Ambos irão existir:
testes automatizados
não substituem testes
manuais
Mito #2:
São tarefas diferentes:
Automação não é um
processo de testes
automação é um projeto
de desenvolvimento
Mito #3:
Hora de aprender:
O mercado pede cada
vez mais profissionais de
QA que saibam
automatizar
Mito #4:
Sem chance:
não é possível
automatizar o caos.
Ferramentas para Automação
Selenium Web Driver
Cucumber
Page Object
Integração Contínua
Teste de Regressão
Selenium Web Driver
Encontra elementos na tela e interage com eles
efetuando cliques, escrevendo textos, etc.
BDD – Behaviour Driven Development
Integra regras de negócios com linguagem de
programação, focando o comportamento do
software. É como uma Documentação executável.
Page Object
Uma página = uma classe
Teste de Regressão
O teste de regressão é reexecutar testes para garantir que o software
previamente testado ainda funcione após uma alteração.
Smoke Test
O Smoke Test é um teste preliminar para revelar falhas simples, graves o
suficiente para, por exemplo, rejeitar uma versão em potencial do software.
Sanity Test
O Sanity é realizado após a compilação de software, com pequenas alterações no
código, para verificar se os bugs foram corrigidos e que nenhum outro problema
foi introduzido devido a essas alterações.
2 + 2 = 5 ?!
Integração de testes
Desenvolvedores juntam suas alterações de código em um
repositório central onde os testes são executados.
Conclusão
A automação de testes não deve ser empregada como um substituto
do teste manual.
O enfoque deve ser na melhoria do processo de testes utilizado na
sua empresa.
A necessidade de automatizar os testes virá naturalmente como
resultado da evolução da maturidade do processo de testes.
DÚVIDAS

Automação de Testes