Apresentação sobre teste ágil no Encontro de Qualidade de Manaus 2012
1. Teste de Software Ágil
Eliane Collins
Parceiro Natural para Inovação
Nokia Technology Institute
2. Roteiro
1. INdT
2. Validação de Produto
3. Teste de Software – Definição
4. Processo de Teste de Software Tradicional
5. Metodologias Ágeis - Princípios
6. Teste na Perspectiva Ágil
7. Papel do Testador Ágil
8. Automação de Testes no Contexto Tradicional e Ágil
9. Desafios do Teste Ágil
10. Lições Aprendidas
Instituto Nokia de Tecnologia
1
Nokia Internal Use Only
3. INSTITUTO NOKIA DE TECNOLOGIA
Nokia Technlogy Intitute
INdT
Centro de pesquisa e desenvolvimento (P&D) sem fins
lucrativos que objetiva gerar novos conceitos, produtos,
soluções e desenvolver o ecosistema Latino-Americano em
áreas ligadas às tecnologias móveis e Internet.
302 funcionários Manaus
Recife
Nossas áreas principais: Brasília
• Criação de Produtos
• Aplicativos e Serviços
São Paulo
• Hardware e Manufatura
• Software Open Source e Interface de Usuário
2
Instituto Nokia de Tecnologia
4. Validação de Produto
É uma subárea que compõe Criação de Produtos.
Surgiu pela necessidade de garantir a qualidade tanto de
produtos de hardware quanto de software.
Equipe de Desenvolvedores/Pesquisadores com habilidades para
prover soluções Tecnológicas na área de engenharia de produto.
Desenvolvimento de Pesquisas na área, Parcerias com UFAM e
Colaboração com a comunidade através de publicações, palestras
e eventos.
2011 – 6 publicações em Congressos e 2 em revistas.
2012 – 4 publicações em Congressos.
Instituto Nokia de Tecnologia
3
Nokia Internal Use Only
5. Testes de Software – Definição
Craig e Jaskiel (2002) Definição:”Teste é um processo de
engenharia concorrente ao processo de ciclo de vida do software,
que faz uso e mantem artefatos de teste usados para medir e
melhorar a qualidade do produto de software sendo testado.”
Por que Testar:
Instituto Nokia de Tecnologia
4
Nokia Internal Use Only
6. Processo de Teste de Software Tradicional
Características:
Fase separada do desenvolvimento.
Equipe independente de Teste.
Equipe de teste separada da equipe de desenvolvimento.
Manual.
Extensa documentação.
Ocorre no final do projeto.
Instituto Nokia de Tecnologia
5
Nokia Internal Use Only
7. Metodologias Ágeis - Princípios
Indivíduos e interações entre eles, ao invés de processos e
ferramentas.
Software funcionando ao invés de documentação detalhada.
Colaboração com os clientes ao invés de documentação e
contratos.
Adaptação a mudanças ao invés de seguir um plano inicial.
Scrum:
Instituto Nokia de Tecnologia
6
Nokia Internal Use Only
8. Testes na Perspectiva Ágil
Reação rápida à mudanças durante o projeto.
Automação de testes como chave fundamental para a agilidade.
Teste em todas as camadas da aplicação.
Desenvolvimento Orientado a testes (TDD).
Testes de Regressão.
Testes Unitários, Integração, Sistema e Aceitação.
Aceptance Test driven Development (ATDD).
Integração Contínua – feedback rápido.
Test-Infected, programadores, testadores e usuários testam.
Instituto Nokia de Tecnologia
7
Nokia Internal Use Only
9. Papel do Testador Ágil
O Analista de Teste passa a ser proativo.
Testes para Prevenir Falhas.
Revisar, clarificar estórias de usuários.
Participar de definições de Arquitetura do Sistema .
Estimar as atividades de teste.
Automatizar testes funcionais.
Suporte aos testes unitários e de integração.
Planejar e executar testes de regressão, performance e
usabilidade, segurança...
Feedback contínuo sobre a qualidade do projeto.
Instituto Nokia de Tecnologia
8
Nokia Internal Use Only
10. Automação de Testes no Contexto Tradicional e
Ágil
[Qualister, Pirâmide da automação de teste, 2010]
Instituto Nokia de Tecnologia
9
Nokia Internal Use Only
11. Automação de Testes no Contexto Tradicional e
Ágil
Ferramentas para automação:
Gerenciamento de Teste – Testlink
(http://testlink.sourceforge.net/docs/testLink.php)
Gerenciamento de Defeitos e Scrum Taskboard – Mantis, bugzilla, Jira
(http://www.atlassian.com/software/jira/)
Integração Contínua – Jenkins e plugins para teste. (http://jenkins-
ci.org/)
Automação de testes funcionais e ATDD – Selenium
(http://seleniumhq.org/), Fitnesse (http://fitnesse.org/), QTTest
driving (http://qt.gitorious.org/qt-labs/qtest-qml), cucumber
(http://cukes.info/).
Testes de Performance – Jmeter (jmeter.apache.org).
Instituto Nokia de Tecnologia
10
Nokia Internal Use Only
12. Desafios do Teste Ágil
“Em agile não é preciso escrever nenhuma documentação”, essa é
uma interpretação errada do manifesto. [Rex Black, 2010]
Papel do Analista de Teste muitas vezes não definido e
reconhecido.
Testadores tradicionais tendem a usar as velhas práticas em
projetos ágeis.
Dificuldade de interação e colaboração com equipe
multifuncional.
Responder rápido às mudanças no projeto.
Atitudes de desenvolvedores tradicionais resistentes a
mudanças.
Instituto Nokia de Tecnologia
11
Nokia Internal Use Only
13. Lições Aprendidas
O analista de teste deve se manter atualizado para evitar falsos
positivos e buscar a excelência técnica.
Evitar deixar os testes para a última semana (efeito cascata).
Sprint de teste depois do de desenvolvimento não funciona.
É necessário manter os testes automatizados e realizar os teste
de regressão baseados em riscos.
Colaboração do time de projeto é fundamental para o
desenvolvimento ágil.
Automação de testes deve ser simples, fácil manutenção e
reusável.
Ferramentas de automação são essenciais para prover
documentação e respostas rápidas ao projeto.
Instituto Nokia de Tecnologia
12
Nokia Internal Use Only
14. Obrigada.
Perguntas?
INFO + CONTATO
www.indt.org
eliane.collins@indt.org.br
Nokia Technology Institute