Este documento descreve a experiência de um projeto que utilizou automação de testes com Scrum. Ferramentas como Selenium foram usadas para automatizar casos de teste funcionais e encontrar defeitos de interface, principalmente entre navegadores. A automação proporcionou cobertura total de funcionalidades, encontrou novos problemas e economizou tempo na geração de relatórios.
Sbqs 2010 Processo de Teste de Software para Scrum
1. Simpósio Brasileiro de Qualidade de Software - SBQS
QUALIDADE
Instituto Nokia de Tecnologia VALIDAÇÃO
Bug
MANTIS
INdT
Experiência em Automação do Processo de Testes
em Ambiente Ágil com SCRUM e Ferramentas
OpenSource
AGILIDADE
SELENIUM
Verificação TestLink
Eliane Collins & Luana Lobão
SCRUM Belém – PA , Jun 2010
2. Agenda
1. Introdução
2. Contexto do Ambiente
3. Processo de Teste
Automatizado
4. Execução do Processo
5. Resultados & Conclusão
Company Confidential
4. INTRODUÇÃO
Projeto web com metodologia ágil Scrum requer esforço de
teste
Identificar problemas nos browsers Firefox, IE6 e IE7
Necessidade que o processo de teste fosse ágil e efetivo
Automação de testes funcionais
Company Confidential
4
6. CONTEXTO DO AMBIENTE
Instituto Nokia de Tecnologia – INdT
É uma instituição independente e sem fins lucrativos comprometida
com a realização de pesquisa e desenvolvimento de soluções
tecnológicas através do desenvolvimento de aplicações, novas
tecnologias e conceitos.
A área onde a experiência foi desenvolvida foi Tecnologias de Produto
e Manufatura (PMT).
Company Confidential
6
7. CONTEXTO DO AMBIENTE
SCRUM
Metodologia ágil e flexível, centrada no trabalho em equipe;
Utilizada para o desenvolvimento incremental e iterativo de
qualquer produto
Company Confidential
7
8. CONTEXTO DO AMBIENTE
On Line Customer Satisfaction Survey - OCSS
Fornecer o resultado sobre Pesquisa de Satisfação do Cliente ao time
de desenvolvimento do projeto
Web, linguagem Ruby, framework Rails, IDE Aptana Studio, MySQL
Apenas 1 recurso para execução de teste
Pouco tempo estimado para teste
Sem ferramentas para teste ou processo formal
Company Confidential
8
10. PROCESSO DE TESTE
Artefatos principais: Plano de Teste, Especificação de Casos
de Teste e Relatório de Execução de Casos de Teste
Métrica: 100 % de funcionalidade
Testador fazia parte da equipe scrum
Análise de ferramentas de automação de testes abertas
Testlink, Mantis e Selenium
Company Confidential
10
11. PROCESSO DE TESTE
Ciclo a cada sprint:
Estudo das Ferramentas de teste – primeiro sprint
Configuração do ambiente de teste – segundo sprint
Planejamento dos casos de teste das estórias do sprint
Escrever scipts de teste automáticos
Executar testes exploratórios e os testes automáticos
Gerar relatórios de execução de testes
Cadastrar defeitos
Validar defeitos e executar regressão de testes (suíte automática)
Company Confidential
11
13. Execução do Processo
Selenium
Suíte de ferramentas open-source que auxiliam na execução de
testes funcionais em um sistema Web;
Funciona nos principais browser’s, plataformas e linguagens
Company Confidential
13
20. RESULTADOS
Cobertura 100% das funcionalidades
Testes de regressão encontravam novos defeitos nas
funcionalidades anteriormente concluídas
Testes automáticos detectavam problemas de interface e
compatibilidade entre browsers
Defeitos de interface corresponderam a 65% dos defeitos
encontrados na aplicação
Company Confidential
20
21. RESULTADOS
95% dos defeitos de interface eram de incompatibilidade de
browsers
Relatórios gerados automaticamente economizavam tempo
Automação propiciou mais tempo para testes e avaliação de
desempenho do sistema
O cliente não encontrou problemas de interface e as
funcionalidades foram garantidas
Company Confidential
21
22. CONCLUSÃO
No scrum é necessário atualizar testes a cada sprint
O tempo para o primeiro sprint com teste foi o maior
Reaproveitamento de scripts de teste
Estimativa de tempo para correção de defeitos tinha que ser
maior
Pesquisa por novas ferramentas de teste
Aplicação do processo em outros projetos
Formalização do processo de teste na empresa
Company Confidential
22