O teste de software é muito importante para a garantia da qualidade de um software. No entanto, a atividade de teste não é uma tarefa simples, ela exige um bom planejamento a para execução ser bem-sucedida. Diante deste cenário, é cada vez mais evidente a busca das empresas por métodos e ferramentas que agilizem o processo de desenvolvimento e garantam uma maior qualidade dos sistemas. É nesse contexto que a automação de testes ganha destaque. Baseado neste aspecto, a presente palestra um relato de experiência em automação de testes funcionais em uma empresa de TI, tendo como foco um projeto de desenvolvimento de um sistema web, utilizando a ferramenta Selenium para automação dos testes
5. Problemática
Como implantar uma estratégia de automação de testes funcionais
em uma empresa de TI, visando solucionar os problemas de grande
esforço na execução de testes de regressão e cobertura reduzida dos
testes?
6. Automação
Automatizar testes significa fazer uso de software
que controle a execução dos casos de teste¹.
1 - TUSCHLING, O. Software Test Automation, 2008
7. Automação
Vantagens da Automação:
• Diminuir o tempo de execução dos testes de regressão.
• Garantir que os testes planejados são executados repetidas vezes sem intervenção
humana.
• Execução de testes difíceis de se realizar manualmente.
• Otimização dos recursos .
• Consistência dos testes repetitivos.
8. Estratégia
Análise do
Processo
seguido pela
empresa
Definição de
uma
Estratégia
de
Automação
Seleção de
Ferramentas
para
Automação
Criar
Critérios de
Seleção de
Casos de
Testes
Selecionar
os Casos de
Testes
Codificação
dos Casos
de Testes
Execução
dos Casos
de Testes
Análise dos
Resultados
9. Análise do Processo Seguido pela Empresa
Criara Casos de
Testes Manuais
Execução dos
Casos de Testes
Manuais
Gerenciamento
de Bugs
10. Definição de uma Estratégia de Automação
Criar Casos de
Testes
Selecionar Casos
de Testes para
Automação
Implementação
Execução dos
Scripts
Gerenciamento
dos Testes
Automatizados
13. Critérios de Seleção dos Casos de Testes
Efetividade
• Possuir uma
probabilidade
razoável de
encontrar erros.
Exemplaridade
• Cenário simples
de
implementação
Economia
• Tempo de
desenvolvimento
e recursos
Integração
• Integração de
componentes
Importância
• Casos de testes
mais importantes